尝试上传到Android市场时,出现“获取'android:icon'属性时出错:属性不是字符串值”的错误。

16

这里没有类似的问题,但是在谷歌上搜索,其他人也遇到了相同的问题。推荐的解决方法都没有起作用。

完整的错误信息如下:

文件无效:W/ResourceType(32055): 在包0中获取0x7f050001(t=4 e=1)的条目失败(错误-75)。ERROR getting 'android:icon'属性不是字符串值

这是我的清单文件:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="com.dominoes"
      android:versionCode="10"
      android:versionName="2.00">
    <application android:icon="@drawable/myicon" android:label="@string/app_name">
        <activity android:name=".Dominoes"
                  android:screenOrientation="landscape"
                  android:configChanges="orientation|keyboardHidden" 
                  android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
        <uses-sdk android:minSdkVersion="3" 
            android:targetSdkVersion="4" />
            <supports-screens
          android:largeScreens="true"
          android:normalScreens="true"
          android:smallScreens="true"
          android:anyDensity="false" />  
</manifest> 

这个图片名为"myicon.png",存放在res/drawable文件夹中。它的大小是96x96个像素,格式为.png。

4个回答

16

在与这个愚蠢的错误纠缠了几个小时后,我自己找到了答案。这是我少数本地化为西班牙语的应用之一,因此我的 res 目录下有以下文件夹:

res/values-en

res/values-es

在以前的 Android 市场版本中,这显然是有效的。我想我上一次更新这个应用程序是一年多以前。

无论如何,结果是我只需要一个普通的 values 目录:

res/values

res/values-en

res/values-es

我只是将 values-en 目录的内容复制到 values 目录中,现在 Android 市场很高兴,并让我上传我的 .apk 文件。我在我找到的任何研究中都没有看到这个特定的答案,所以希望这对某人有所帮助。


你可以接受自己的答案,这将有助于其他人在未来。 - David Snabel-Caunt
另一个常见的上传问题是,您确实拥有值文件夹,但默认的strings.xml文件中缺少某些文字,而这些文字在翻译中存在。此外,我在错误消息中看到了“android:icon”,但也看到了“android:label”。 - hcpl

6

您需要将主要使用的图标放入drawable文件夹中。您不必删除其他文件夹中的图标,可以将它们与不同大小的图标一起保留,但至少要将其中一个放入drawable文件夹中。


3

在我的情况下,我将icon.png文件放置到所有drawable-文件夹(xdpi、mdpi和其他)中。为了解决这个问题,我从drawable-文件夹(xdpi、mdpi和其他)中删除了所有的图标,并在drawable文件夹中放置了一个96x96的图标,问题得到了解决。


1
根据最新的Play商店要求,如果您只将android:icon drawable放在类似于“drawable-large-land”或其他指定bucket相关资源的文件夹中,则可能需要将其从AndroidManifest.xml文件中移到“drawable”文件夹或“drawable-nodpi”文件夹中。在我的情况下,我只是将我用于应用程序图标的资源复制到了“drawable-nodpi”文件夹中,然后Play商店就接受了我的apk。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接