2017-09-26 5 views
1

Ich entwickle eine native (C++) App für Samsung Gear, die auch Android Companion App verwendet. Meine App wurde aufgrund eines fehlenden Deep-Links zur Companion-App abgelehnt. Ich fand heraus, dass ich diesen Tag in Tizen-manifest.xmlSamsung Gear Companion App Deep Link

<metadata key="master_app_playstore_deeplink" value="https://play.google.com/store/apps/details?id={package_id}"/> 

Allerdings enthalten soll, meine App erneut abgelehnt wurde. Ich erhalte diese Ausgabe

There is no deep link to download companion app '{app name}' 

mit Beschreibung

<Defect> 
There is no deep link to download companion app '{app name}' 

<Procedure> 
1. Check that the app need master app '{app name}' 
2. Download the app form Galaxy Apps > Check that no deep link occur 

<Expected Result> 
DeepLink should occur right after installing Gear application. 
<Test Device Info> 
Detected Device: SM-N910C_SM-R770, SW Version: R770XXU2BQG4_N910CXXS2DQB8 

Ich bin nicht sicher, wie die tiefe Verbindung funktionieren sollte, so bin ich nicht in der Lage, es richtig zu testen. Jede mögliche Hilfe

Dank geschätzt werden

// EDIT: Hier ist mein Tizen-manifest.xml (Privilegien und Features fehlen http://tizen.org/ am Anfang, weil ich nicht genug rep posten mehr als zwei Links)

<?xml version="1.0" encoding="UTF-8" standalone="no"?> 
<manifest xmlns="http ://tizen .org/ns/packages" api-version="2.3.2" package="{app_package}" version="1.0.0"> 
    <profile name="wearable"/> 
    <ui-application appid="{app_package}" exec="{exec_name}" multiple="false" nodisplay="false" taskmanage="true" type="capp"> 
     <label>{app_name}</label> 
     <icon>ic_launcher.png</icon> 
     <metadata key="accessory-services-location" value="/res/xml/accessoryservices.xml"/> 
     <metadata key="launch-on-attach" value="false"/> 
     <metadata key="master_app_playstore_deeplink" value="https://play.google.com/store/apps/details?id={package_id}"/> 
    </ui-application> 
    <privileges> 
     <privilege>privilege/mediastorage</privilege> 
     <privilege>privilege/appmanager.launch</privilege> 
     <privilege>http://developer.samsung.com/tizen/privilege/accessoryprotocol</privilege> 
     <privilege>privilege/recorder</privilege> 
     <privilege>privilege/externalstorage.appdata</privilege> 
     <privilege>privilege/externalstorage</privilege> 
    </privileges> 
    <feature name="feature/screen.size.all"/> 
    <feature name="feature/microphone">true</feature> 
</manifest> 
+0

geben Sie Ihr Android und Tizen Manifest-Skript. –

Antwort

-1

Hier ein Beispiel für config.xml von einer einfachen Tizen Web-Anwendung genommen ist, in den Configuring Gear Application documentation gefunden:

<tizen:metadata key="master_app_name" value="master App"/> 
<tizen:metadata key="master_app_packagename" value="com.example.masterapp"/> 
<tizen:metadata key="master_app_min_version" value="10"/> 
<tizen:metadata key="master_app_samsungapps_deeplink" value="Samsungapps deeplink URL"/> 
<tizen:metadata key="master_app_playstore_deeplink" value="playstore deeplink URL"/> 
<tizen:metadata key="master_app_3rd_url_deeplink" value="3rd url deeplink URL"/> 
<name>WebBasic</name> 
<tizen:profile name="wearable"/> 

und vom Samsung Gear Application Programming Guide:

Wenn es App Prioritäten zu bestimmen, in dem China-Modell kommt, master_app_3rd_url_deeplink ist höher als master_app_samsungapps_deeplink. In Nicht-China-Modellen ist master_app_samsungapps_deeplink höher als master_app_playstore_deeplink.

So, wie Sie jede Konfiguration nicht gegeben haben, ich bin zu raten Sie nicht master_app_samsungapps_deeplink in Ihrem configs hinzugefügt haben.

+0

hi, ich habe meine tizen-manifest.xml hinzugefügt –

+0

Wie oben beschrieben, haben Sie den Link Galaxy apps in Ihrem Manifest verpasst. Es hat mehr Priorität gemäß dem offiziellen Dokument, das ich oben geteilt habe. Deshalb bekommst du diese Nachricht –

+1

Er hat Playstore Deeplink zur Verfügung gestellt. Warum braucht er samsungapps deeplink? Sie müssen Ihren Begleiter nicht an zwei Orten registrieren. Eins ist ausreichend –

0

Die richtige URL-Syntax für Deep Linking mit Play Store ist:

<metadata key="master_app_playstore_deeplink" value="market://details?id={package_id}"/> 

Beispiele Siehe für beide samsungapps und Play Store unter "Notes" in diesem Dokument: http://developer.samsung.com/gear/develop/creating-your-first-app/web-companion/configuration

  1. Samsung Galaxy Apps Guide: Ex) samsungapps: //ProductDetail/com.example.myapp

  2. Spielen Store Guid e: Ex) Markt: // Details id = com.example.myapp

Bitte beachten Sie auch, bemerken DeepLinking Arbeit zu machen, müssen Sie nicht beide URLs, benötigen Sie nur eine. Ich habe gerade meine Begleit-App eingereicht, die nur im Play Store registriert ist. Sie funktioniert perfekt mit einer Gear-App.