and*_*per 26 android apk aapt google-play
经过这么多小时的空闲时间后,我准备将我的第一个应用程序发布到游戏商店,但遗憾的是我在上传已签名的应用程序时遇到了困难.
我已经使用我创建的密钥库(所有这些都通过Eclipse和ADT)成功导出了应用程序,因此我将已签名的APK上传到Play商店(此处).
我一直收到这条消息:
上传失败您的APK无法使用'aapt dump Badging'进行分析.错误输出:无法运行aapt转储标记:W/ResourceType(14856):获取资源号为0x01080049的值时没有已知包错误获取'android:icon'属性:属性不是字符串值
因此:

应用程序本身在真实设备上运行良好,正在使用的图像文件是android-assets-studio网站使用的普通PNG文件.
我在这里搜索了StackOverflow并发现了很多关于它的帖子(这里).我读了很多,并尝试了下一步,但没有任何帮助:
将应用程序图标放在不同的文件夹("drawable","drawable-mdpi",...甚至"drawable-xxxhdpi")中,具有多种组合(从每个文件夹中放入/删除).
在"应用程序"标记和启动器活动标记上设置标签,图标和主题.
更改图像文件名和文件本身(将其替换为默认的应用程序图标).
清理项目.
检查Lint消息.
更新ADT(至22.3.0.v201310242005-887826),Eclipse(至Kepler Service Release 1),SDK工具(至22.3),SDK构建工具(至19.0.1).一切都是最新的官方版本.
检查是否没有使用双jar文件(多个库上不存在jar文件,特别是如果它有不同的版本).
尝试将strings.xml放入"res/values-en"而不是"res/values"
尝试将"android:value"属性添加到清单上的所有元数据标记(由Google建议).它没用.事实上,在我读过的所有教程中,我从来没有从AppWidget看到过这样的要求,所以我认为不需要它.
尝试了aapt命令:
aapt dump badging
Run Code Online (Sandbox Code Playgroud)这向我展示了游戏商店显示的相同内容(我已经用XXX替换了真正的包名和应用名称):
Run Code Online (Sandbox Code Playgroud)application: label='XXX XXX' icon='res/drawable-mdpi/app_icon.png' launchable-activity: name='XXX.XXX.XXXActivity' label='XXX XXX' icon='res/drawable-mdpi/app_icon.png' W/ResourceType( 9132): No known package when getting value for resource number 0 x01080049 ERROR getting 'android:icon' attribute: attribute is not a string value
即使文件存在于此文件夹中,也会发生这种情况.
这是清单.再次,用XXX替换了活动和应用程序的真实路径和名称.我可以向你保证路径是正确的,因为应用程序可以正常运行.
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="XXX.XXX"
android:installLocation="auto"
android:versionCode="2"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="9"
android:targetSdkVersion="19" />
<supports-screens
android:anyDensity="true"
android:largeScreens="true"
android:normalScreens="true"
android:smallScreens="true"
android:xlargeScreens="true" />
<uses-permission android:name="com.android.launcher
.permission.INSTALL_SHORTCUT" />
<uses-permission android:name="android
.permission.KILL_BACKGROUND_PROCESSES" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_SUPERUSER" />
<!-- required for admob: -->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<!-- required for in-app billing . -->
<uses-permission android:name="com.android.vending.BILLING" />
<!-- needed for payload of in-app billing -->
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<application
android:name="XXX.XXX.XXX"
android:allowBackup="true"
android:description="@string/app_description"
android:hardwareAccelerated="true"
android:icon="@drawable/app_icon"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="XXX.XXXActivity"
android:clearTaskOnLaunch="true"
android:configChanges="keyboard|keyboardHidden|orientation|
screenLayout|uiMode|screenSize|
smallestScreenSize"
android:finishOnTaskLaunch="true"
android:icon="@drawable/app_icon"
android:label="@string/XXX"
android:launchMode="singleTask"
android:screenOrientation="fullSensor" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
... (other activities and services)
Run Code Online (Sandbox Code Playgroud)
到底是怎么回事?
我该如何克服这个问题?
Pab*_*rio 16
如果您使用任何Android系统图标作为活动图标(即清单包含<activity ... android:icon="@android:drawable/...),它们可能是问题所在.如果是,请尝试将这些图标复制到项目中.在其他地方使用它们应该没有问题,因为徽章不会触及那些.
Alb*_*o M 13
对我而言,我试图将透明图标放在这样的事实:
android:icon="@android:color/transparent"
| 归档时间: |
|
| 查看次数: |
8703 次 |
| 最近记录: |