打算在Android手机上打开Tizen/Galaxy/Samsung应用商店
我已经为Android应用程序构建了Tizen/Samsung smartwatch companion应用程序。在Android应用程序中,我可以检测到三星/Tizen手表是否与Android手机配对,但缺少smartwatch companion应用程序 如果用户没有smartwatch companion应用程序,我会提示用户安装该应用程序。但是,我希望通过提供一个按钮让用户点击,可以直接打开Galaxy应用商店到smartwatch companion应用下载页面,从而让用户很容易获得companion应用 是否打算在Android手机上打开Galaxy商店的特定应用程序页面 我在其他答案的基础上尝试了这一点,因此:打算在Android手机上打开Tizen/Galaxy/Samsung应用商店,android,tizen,samsung-galaxy-gear,Android,Tizen,Samsung Galaxy Gear,我已经为Android应用程序构建了Tizen/Samsung smartwatch companion应用程序。在Android应用程序中,我可以检测到三星/Tizen手表是否与Android手机配对,但缺少smartwatch companion应用程序 如果用户没有smartwatch companion应用程序,我会提示用户安装该应用程序。但是,我希望通过提供一个按钮让用户点击,可以直接打开Galaxy应用商店到smartwatch companion应用下载页面,从而让用户很容易获得c
val intent = Intent(Intent.ACTION_VIEW, Uri.parse("samsungapps://ProductDetail/com.sec.android.app.samsungapps"))
startActivity(intent)
这与:
android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.VIEW dat=samsungapps://ProductDetail/com.sec.android.app.samsungapps }
at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:2058)
at android.app.Instrumentation.execStartActivity(Instrumentation.java:1716)
at android.app.Activity.startActivityForResult(Activity.java:5211)
at androidx.fragment.app.FragmentActivity.startActivityForResult(FragmentActivity.java:675)
at android.app.Activity.startActivityForResult(Activity.java:5169)
at androidx.fragment.app.FragmentActivity.startActivityForResult(FragmentActivity.java:662)
at android.app.Activity.startActivity(Activity.java:5540)
at android.app.Activity.startActivity(Activity.java:5508)
注意:我需要一个能在Galaxy Store的所有Android手机上运行的解决方案,而不仅仅是三星手机。相反。正如我所解释的,您需要在手表应用程序的config.xml中添加以下标记,以便从Play Store在Android上自动安装配套应用程序
<metadata key="master_app_playstore_deeplink" value="market://details?id={package_id}"/>
如果你通过三星的Galaxy应用商店发布你的Android应用程序,那么你需要使用“samsungapps://”方案
Android系统对这两种方案都一无所知,这就是为什么你会遇到这种例外,这就是为什么在Android系统中使用这些方案是行不通的
如果有其他方法做你想做的事,我不知道-你需要研究一下。三星提供的Android SAP库中可能有一些东西。我没有具体说明,但我使用.NET构建了我的Tizen应用程序。我找不到任何说明master_app_playstore_deeplink在.NET应用程序中工作的文档。如果是这样的话,它将放在tizen-manifest.xml文件中,而不是config.xml文件中,因为.NET tizen应用程序不存在config.xml文件。我现在将此标记为公认的答案。TL;DR目前无法通过Android应用程序内部的意图打开Galaxy Store,但如果用户安装了Tizen Watch应用程序,但没有Tizen应用程序配套的Android应用程序,则可以在Android手机上打开Play Store。这种情况非常落后(至少对我们来说),因为我们的Android应用程序非常流行,但它可能会帮助一两个人获得正确的Android应用程序。@DiscDev Android和Tizen平台都有许多缺点。我们只需要调整,尽量不要太沮丧。我应该承认,这并不总是容易的。在这一点上,我已经为iOS、Android、WearOS、Apple Watch和Tizen构建了本地移动应用程序。Tizen的文档、工具、IDE、模拟器、应用程序批准流程等是所有5项中最差的。Tizen硬件很棒!开发人员的体验需要极大的改进。难怪Tizen的应用程序如此之少。让它更好地为开发者服务,我们将构建好的应用程序。