BUG Review:關於getting 'android:xxx' attribute: attribute is not a string value的問題及解決方法

咱們在使用Android Studio開發完應用程序後,都要將打好的apk安裝包上傳到各大應用市場,可是有時候上傳時應用市場會出現提交的安裝包不能經過應用市場的aapt解析而被打回的狀況。android

他們使用aapt解析咱們的apk文件的過程當中會報錯,出現相似於小程序

getting 'android:xxx' attribute: attribute is not a string value編碼

這種錯誤,xxx多是Label,也多是name。這是什麼緣由呢?xml

出現這種錯誤的大部分緣由是,咱們在聲明Label或者name的時候使用的@string來進行字符串的引用,可是在aapt.exe這個Google官方的解析小程序中,@string這種引用有時候是不能被識別的。開發

若是再AndroidManifest.xml文件中的屬性聲明後使用了@string這種引用,在使用aapt.exe解析安裝文件時就會報錯,若是應用市場解析你的apk文件時報錯,它就不能得到你apk徹底的信息,就不會容許你上傳新的apk安裝包。字符串

這種狀況怎麼解決呢,建議的也是大多數人的解決方法是將清單文件中的@string引用所有換成引用的自己的字符串,就能夠解決這個問題。也有些博文中(國內或者國外的)說能夠將AndroidManifest.xml文件中的全部@stringget

都以硬編碼的方式寫在文件裏,其實沒有必要這麼作,由於只要aapt不報這個錯誤,就證實你的清單文件是能夠被解析識別的。string

以後我會將每個碰見的這種問題都記錄下來,以避免下回再碰到的時候忘記。io

相關文章
相關標籤/搜索