android 上傳應用商店時出現ERROR getting 錯誤

  最近接手了一個bug,是上傳應用商店的時候,部分應用商店會調用aapt工具獲取apk信息,在獲取信息時會出現如下相似錯誤。android

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

sdkVersion:'8'app

targetSdkVersion:'21'工具

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

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

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

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

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

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

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 就能夠了。

相關文章
相關標籤/搜索