【AGC】打开付费下载应用提示安装华为应用市场

 【问题描述】

最近在华为应用市场发布了一个付费下载的应用,使用华为手机付费后安装应用,然后打开应用一切正常,但是有用户反馈在非华为手机上安装应用,打开提示“请先安装最新版本的华为应用市场”,而实际上手机已经安装了华为应用市场。

cke_248.png

【问题分析】

经过和华为技术人员咨询后,知道问题原因是我的应用在打开时探测不到华为应用市场的包名,因此认为手机上没有安装华为应用市场。根本原因是是在Android11系统限制了部分权限,在默认情况下,系统会自动让部分应用对开发者的应用可见,但会过滤掉其他应用。

【解决方案】

解决这个问题也很简单,可以通过声明软件包可见性解决,具体操作是在AndroidManifest.xml文件中添加 <queries> 元素列出 intent 过滤器即可。

相关介绍和操作也可以参考Android指导文档:https://developer.android.com/training/package-visibility/declaring?hl=zh-cn

cke_7258.png

扫描二维码关注公众号,回复: 14504664 查看本文章

具体代码我也贴出来:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.drmreleasedemo">
    <queries>
        <intent>
            <action android:name="com.huawei.appmarket.drm.GET_SIGN" />
        </intent>
    </queries>
    ...
</manifest>

 欲了解更多更全技术文章,欢迎访问https://developer.huawei.com/consumer/cn/forum/?ha_source=zzh

{{o.name}}
{{m.name}}

猜你喜欢

转载自my.oschina.net/u/4478396/blog/5569800