Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Cross-Platform-Entwicklung (https://www.delphipraxis.net/91-cross-platform-entwicklung/)
-   -   Android Intent findet installierte App nicht (https://www.delphipraxis.net/208899-android-intent-findet-installierte-app-nicht.html)

braunbaer 27. Sep 2021 10:41

Android Intent findet installierte App nicht
 
Servus zusammen,
mit Delphi 11 erkennen meine Apps nicht mehr, ob beziehungsweise dass die andere App installiert ist.

Aufruf:

Code:
    Intent := TJIntent.Create;
    Intent.setType(StringToJString('text/pocketblue'));
    Intent.setAction(TJIntent.JavaClass.ACTION_VIEW);
    Intent.putExtra(TJIntent.JavaClass.EXTRA_TEXT, StringToJString(UrlZusatz));

    if MainActivity.getPackageManager.queryIntentActivities(Intent, TJPackageManager.JavaClass.MATCH_DEFAULT_ONLY)
      .size > 0 then
    begin
      MainActivity.startActivity(Intent);
      exit(true);
    end
    else
    begin    
      exit(False);
    end;
Im Manifest ist entsprechend vorhanden:

Code:
    <intent-filter>
           <action android:name="android.intent.action.VIEW" />
           <category android:name="android.intent.category.DEFAULT" />
           <category android:name="android.intent.category.BROWSABLE" />
           <data android:mimeType="text/pocketblue" />
    </intent-filter>

Das funktioniert so seit Jahren einwandfrei.
Kann es sein, dass mit Delphi 11 zusätzlich etwas angepasst werden muss, zusätzliche Unit oder so...?
Gab es Änderungen im Manifest-File? Ich habe dieses auch schon neu erstellt - ändert leider nichts.

Schon mal Danke für jeden Tipp!!

Rollo62 27. Sep 2021 11:59

AW: Android Intent findet installierte App nicht
 
Hilft Dir das weiter ?
https://stackoverflow.com/questions/...th-action-view

braunbaer 27. Sep 2021 14:04

AW: Android Intent findet installierte App nicht
 
Vielen Dank Rollo62!
Zitat:

Zitat von Rollo62 (Beitrag 1495440)

Ich hab dann noch das gefunden: https://developer.android.com/guide/...ueries-element

im Manifest muss zusätzlich im Abschnitt Queries das Ziel-Package angegeben werden, also wohin will ich springen:
im Template schaut das dann zb. so aus:
Code:
<queries>
   <package android:name="eu.pocketread.PocketTime" />
   <package android:name="eu.pocketread.ewiApp" />
   
<%queries-child-elements%>
</queries>

Rollo62 27. Sep 2021 16:16

AW: Android Intent findet installierte App nicht
 
Schön das es bei Dir läuft, also funktioniert der unveränderte Code wie unten, nur mit den zusätzlichen Manifest-Einträgen ?
Schade das Google ständig nach weiteren "Verbesserungen" solcher Art sucht, die bei uns die Apps killen.

braunbaer 27. Sep 2021 17:35

AW: Android Intent findet installierte App nicht
 
Beim Aufruf des Intent habe ich zusätzlich
Code:
if MainActivity.getPackageManager.queryIntentActivities(Intent, TJPackageManager.JavaClass.MATCH_DEFAULT_ONLY).size > 0 then
durch
Code:
if Assigned(MainActivity.getPackageManager.resolveActivity(Intent, TJPackageManager.JavaClass.MATCH_DEFAULT_ONLY)) then
ersetzt. Sonst blieb alles wie es war.


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:39 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz