华为应用市场的动态特性常见问题解答

时间:2021-07-15 | 标签: | 作者:Q8 | 来源:HUAWEI网络

小提示:您能找到这篇{华为应用市场的动态特性常见问题解答}绝对不是偶然,我们能帮您找到潜在客户,解决您的困扰。如果您对本页介绍的华为应用市场的动态特性常见问题解答内容感兴趣,有相关需求意向欢迎拨打我们的服务热线,或留言咨询,我们将第一时间联系您!


[问题一]已经加载完成动态特性后如何启动?

< ">1、加载成功后返回

< ">为FeatureInstallManager实例注册监听器后,可以监听动态加载的过程。开发者可以通过监听器回调方法中的InstallState实例的status()返回的状态,判断动态特性是否已经安装完成。例如:

if(state.status()==FeatureInstallSessionStatus.INSTALLED){

Log.i(TAG,"installed success,can use new feature");



}

< ">2、查看动态特性是否已经安装

< ">调用getAllInstalledModules()方法,查看对应的特性是否已经安装。

private void getInstalledFeature(){

Set<String>moduleNames=mFeatureInstallManager.

getAllInstalledModules();

Log.i(TAG,"get all installed modules:"+moduleNames);

}

< ">3、启动动态特性

此处以启动动态特性中的FeatureActivity为例:

startActivity(new Intent(this,

< ">Class.forName("com.huawei.android.demofeature.FeatureActivity")));

< ">< font-size: 18px;">[问题二]如何查看当前动态加载过程中的有效状态?

< ">为FeatureInstallManager实例注册监听器后,可以监听动态加载的过程。Dynamic Ability SDK预定义的状态码保存在FeatureInstallSessionStatus类中。开发者可以通过监听器获取当前动态加载的状态,并做出相应调整。

< ">< font-size: 18px;">[问题三]动态加载过程中出现错误,该怎么办?

< ">为FeatureInstallManager实例注册监听器后,可以监听动态加载的过程。当监听到失败时,可以通过调用state.errorCode()方法获取具体的错误码。开发者可以根据错误码判断出当前具体的错误和原因,然后再做出相应调整即可。具体错误码可参考FeatureInstallErrorCode。

< ">< font-size: 18px;">[问题四]App中完成动态加载,但启动特性时提示Cla舆情学ssNotFoundException。

< ">启动feature的某个组件时,可能写错了包名或类名,所以请检查特性对应的Activity完整名称是否书写正确。

< ">此处以启动动态特性模块中的FeatureActivity为例:

< ">startActivity(new Intent(this,Class.forName(“com.huawei.android.demofeature.FeatureActivity”)));

< ">< font-size: 18px;">[问题五]App中完成动态加载,但启动特性时提示java.lang.RuntimeException:Unable to start activity < font-size: 18px;">ComponentInfo{xxxx}android.content.res.Resources$NotFoundException:Resource ID xxxx。

< ">假如安装完成后,你需要马上启动新增动态特性的一些Activity,需要重载方法attachBaseContext()。

< ">以FeatureActivity为例。

public class FeatureActivity extends Activity{

 Override

protected void attachBaseContext(Context newBase){

super.attachBaseContext(newBase);

try{

FeatureCompat.install(newBase);

}catch(Exception e){

L学校怎么危机公关og.e(TAG,"attachBaseContext error:"+e.getMessage());

}

}

}

< ">< font-size: 18px;">[问题六]加载成功后启动特性,报“UnsatisfiedLinkError:dlopen failed:library name xxxxxx too long”错误。

< ">因为较低版本的Android系统对部分文件的路径长度做了限制,所以建议开发者设置“包名+版本号+feature名称+so文件名称”的总长度不超过50个字符。



[问题七]集成Dynamic Ability SDK开发应用并发布到华为应用市场后,只能安装该应用的全量APK包。

< ">由于动态加载SDK使用的是App Bundle技术,仅支持Android 5.0及以上版本。所以,对于低于Android 5.0以下的版本,不支持动态加载,只能安装全量APK。

< ">< font-size: 18px;">[问题八]针对不同平台(如手机,大屏,带屏音箱)上华为应用市场包名不同的问题,Dynamic Ability SDK是如何适配解决的?

< ">通过应用市场固定的service action,遍历设备上的所有匹配应用,取出其meta-data,如果meta-data中包含指纹和证书链信息并用根证书校验通过,则认为该应用为当前设备上的应用市场,返回其包名即可。如果在设备上同时装多个应用市场版本,则当前策略是返回第一个找到的应用市场包名。

华为应用市场的动态特性常见问题解答

上一篇:华为应用市场之付费下载FAQ
下一篇:如何用TikTok抖音国际版+速卖通联盟低成本引流变


版权声明:以上主题为“华为应用市场的动态特性常见问题解答"的内容可能是本站网友自行发布,或者来至于网络。如有侵权欢迎联系我们客服QQ处理,谢谢。
相关内容
推荐内容
扫码咨询
    华为应用市场的动态特性常见问题解答
    打开微信扫码或长按识别二维码

小提示:您应该对本页介绍的“华为应用市场的动态特性常见问题解答”相关内容感兴趣,若您有相关需求欢迎拨打我们的服务热线或留言咨询,我们尽快与您联系沟通华为应用市场的动态特性常见问题解答的相关事宜。

关键词:华为应用市场的动态特性

关于 | 业务 | 案例 | 免责 | 隐私
客服邮箱:sales@1330.com.cn
电话:400-021-1330 | 客服QQ:865612759
沪ICP备12034177号 | 沪公网安备31010702002418号