1

Ich habe die zusätzlichen Features der App-Indexierung und Deep Linking für mein Spiel App als Plugin .. DeepLinking ordnungsgemäß funktioniert, wird die Funktion der App-Indexierung, dh die automatische Vervollständigung nicht funktioniert, .. wieUm Autocomplete-Funktion der App-Indizierung zu haben, ist es notwendig, die neueste aktualisierte App im App Store zu veröffentlichen?

PendingResult<Status> result=AppIndex.AppIndexApi.end(mClient,getAction()); 

result.setResultCallback(new ResultCallback<Status>() 

Über dem Code: Datensätze der besuchten Seite aufrufen;

Und zeigt im Play Store, wenn Sie versuchen, ähnlich wie die Seite zu suchen.

Aber es zeigt mir nicht die automatische Vervollständigung ..

+0

Nr Es ist nicht notwendig neuesten App auf Play Store zu veröffentlichen, für die Funktion zum automatischen Vervollständigung zu arbeiten. Bitte poste deinen Code genauer, damit die Leute dir helfen können. –

+0

ja es ist nicht notwendig .. Auto complete funktioniert jetzt richtig ... Danke. Aber wenn ich auf die Option "Seite automatisch vervollständigen" klicke, wird die Verknüpfung mit der Spiele-App nicht hergestellt. bedeutet, wenn ich auf Auto complete klicke, wird das Spiel nicht geöffnet. Ist es notwendig, dass das konfigurierte Build veröffentlicht wird, um es zu überprüfen? –

+0

Bitte geben Sie den Code Ihrer Manifest-Datei an, in der Sie Deeplinks bearbeitet haben. Ich hoffe, Sie haben das Deeplink-URL-Schema im Manifest für die Aktivität definiert, die geöffnet werden muss, wenn Sie auf die Option zum automatischen Vervollständigen klicken. –

Antwort

0

enter image description here Überprüfen Sie das Bild der Manifest-Datei

+0

Für die UnityPlayerNativeActivity sollte das Schema "https" sein. Definieren Sie auch Ihr eigenes Pfadpräfix, obwohl 'Android-App' funktionieren würde Ich glaube nicht, dass Sie das suchen. Sehen Sie sich meine Antwort für einen Link zum Tutorial an. –

3

In dem Manifest, die Aktivität, die deeplinked werden muss (geöffnet werden kann durch einen URI von Ihnen definierten) sollten haben folgende Struktur:

<activity 
       android:name=".MyActivity" 
       <intent-filter android:label="@string/app_name"> 
        <action android:name="android.intent.action.VIEW" /> 
        <category android:name="android.intent.category.DEFAULT" /> 
        <category android:name="android.intent.category.BROWSABLE" /> 
        <!-- Accepts URIs that begin with "http://my-app.com/mypage" --> 
        <data android:scheme="http" 
         android:host="my-app.com" 
         android:pathPrefix="/mypage" /> 
       </intent-filter> 
</activity> 

In Ihrer Aktivität definieren Sie einen URI, der diese Aktivität eindeutig identifiziert. Es sollte im folgenden Format sein: //android-app://<package_name>/<scheme>/[host_path]).

Zum Beispiel:

private static final Uri MY_URI = Uri.parse("android-app://com.myapp/http/my-app.com/mypage/"); 

Außerdem benötigen Sie eine Instanz der GoogleApiClient zu verwenden.

private GoogleApiClient mClient; 

In der onCreate Funktion initialisieren Sie den Client:

mClient = new GoogleApiClient.Builder(this).addApi(AppIndex.APP_INDEX_API).build(); 

Dann, wo immer angemessen im Code, an den Client verbinden und eine Aktion erstellen, die den AppIndex API übergeben werden.

Zum Beispiel:

// Connect your client 
mClient.connect(); 
// Define a title for your current page, shown in autocompletion UI 
final String TITLE = "My Title"; 
//Define an action 
Action viewAction = Action.newAction(Action.TYPE_VIEW, TITLE, MY_URI); 

// Call the App Indexing API view method 
PendingResult<Status> result = AppIndex.AppIndexApi.start(mClient, viewAction); 

result.setResultCallback(new ResultCallback<Status>() { 
       @Override 
       public void onResult(Status status) { 
        if (status.isSuccess()) { 
         Log.d(TAG, "App Indexing API: Recorded view successfully."); 
        } else { 
         Log.e(TAG, "App Indexing API: There was an error recording the view." 
           + status.toString()); 
        } 
       } 
      }); 

Schließlich trennen die GoogleApiClient Instanz im OnStop Methode:

mClient.disconnect(); 

Ich würde vorschlagen, dass Sie das folgende Tutorial durch auf Google CodeLabs für AppIndexing und Deeplinken. Sie benötigen ein gewisses Verständnis dafür, wie die Tiefenverknüpfung funktioniert, bevor Sie die App-Indizierung richtig implementieren können.

https://codelabs.developers.google.com/codelabs/app-indexing/#0

+1

Akzeptieren Sie diese Antwort, wenn es Ihnen geholfen hat. –

+0

Hi zur Zeit verwende ich URI wie folgt, - mUrl = "android-app://com.Mypackage.chef_android/https/play.google.com/store/apps/"; und in Manifest-Datei erwähnte ich tiefe Links wie folgt - –

+0