Milan Poliak
Milan Poliak

Reputation: 86

Samsung gear companion app deep link

I am developing a native (C++) app for Samsung Gear which also uses Android companion app. My app has been rejected due to missing deep link to companion app. I found out that I should include this tag in tizen-manifest.xml

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

However, my app has been rejected again. I get this issue

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

with description

<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

I am not sure how the deep link should work, so I am not able to test it properly. Any help would be appreciated

Thanks

//EDIT: here is my tizen-manifest.xml (privileges and features are missing http://tizen.org/ at the beginning, because I do not have enough rep to post more than two 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>

Upvotes: 2

Views: 1247

Answers (2)

Oleg Gryb
Oleg Gryb

Reputation: 5249

The correct URL syntax for deep linking with Play Store is:

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

See examples for both samsungapps and Play Store under "Notes" in this document: 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. Play Store Guide : Ex) market://details?id=com.example.myapp

Please also notice, to make deep linking working, you don't need both URL's, you need only one. I've just submitted my companion app registered at Play Store only, and it works perfectly well with a Gear app.

Upvotes: 2

Iqbal hossain
Iqbal hossain

Reputation: 1816

Here is an example of config.xml taken from a simple Tizen web application, found in the Configuring Gear Application documentation:

 <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"/>

and from the Samsung Gear Application Programming Guide:

When it comes to determining app priorities in the China model, master_app_3rd_url_deeplink is higher than master_app_samsungapps_deeplink. In non-China models, master_app_samsungapps_deeplink is higher than master_app_playstore_deeplink.

So, As you have not given any configuration, i am guessing you have not added master_app_samsungapps_deeplink in your configs.

Upvotes: -1

Related Questions