android 上传应用商店时出现ERROR getting 错误

  最近接手了一个bug,是上传应用商店的时候,部分应用商店会调用aapt工具获取apk信息,在获取信息时会出现以下类似错误。

package: name='com.xxx.activity' versionCode='1' versionName='1.0'

sdkVersion:'8'

targetSdkVersion:'21'

application-label:'鎺屼腑搴嗛槼'

application-icon-120:'res/drawable-ldpi-v4/ic_launcher.png'

application-icon-160:'res/drawable-mdpi-v4/ic_launcher.png'

application-icon-240:'res/drawable-hdpi-v4/ic_launcher.png'

application-icon-320:'res/drawable-xhdpi-v4/ic_launcher.png'

application-icon-480:'res/drawable-xxhdpi-v4/ic_launcher.png'

application: label='鎺屼腑搴嗛槼' icon='res/drawable-mdpi-v4/ic_launcher.png'

application-debuggable

launchable-activity: name='com.xxx.activity.xxxActivity'  label='' ico

n=''

ERROR getting 'android:name' attribute: attribute is not a string value

这个错误并不长出现,只有一些国外的解决文章,还是花了一些时间才解决,这里记录一下了,如果少年们出现了类似的问题也可是试一下下面的解决方案。


首先我们如果出现上传问题以后可以使用aapt工具检测一下,工具在 sdk build-tools 文件夹下,用 cmd 的方式打开。

命令是 aapt dump badging xx.apk xx为应用名称,意思是获取apk相关信息。当程序出现问题就会出现和应用商店相同的提示信息。

ERROR getting 'android:name' attribute: attribute is not a string value

在我接手的项目里面出现这个问题的原因是,AndroidManiFest 中 activity 的 android:name= 用了@string的模式,这种相关的使用方式导致 aapt 无法识别。

修改方法就是把 @string 中的字符串复制到 android:name 中,然后使用 aapt 工具跑一下就可以解决问题了。如果重新打包的应用上传的应用商店时还出现错误提示,可以尝试刷新页面。

          <!-- 微信回调activity -->
        <activity
            android:name="@string/weixin_callback"
            android:configChanges="keyboardHidden|orientation|screenSize"
            android:exported="true"
            android:screenOrientation="portrait"
            android:theme="@android:style/Theme.Translucent.NoTitleBar" />

网上有国外的解决方案是吧 AndroidMainFest中所有 @string 都是用硬编码的方式写到文件里,这里其实并不需要的,只要没有提示 ERROR getting 'android:label' attribute: attribute is not a string value 或者是其他的类似提示,都只要修改 activity 里 android:name 就可以了。

转载于:https://my.oschina.net/YiChenZ/blog/472886

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值