【问题标题】:App is incompatible with all devices after publishing to the Market but same was working when moved directly to the device应用程序在发布到市场后与所有设备不兼容,但直接移动到设备时相同
【发布时间】:2012-01-25 18:12:49
【问题描述】:

我使用 PhoneGap 开发了一个应用程序,并在不同版本的模拟器和我的摩托罗拉 Photon 中进行了测试。我在测试中没有遇到任何问题。

但是当我在市场上发布相同内容时,它显示“此应用与您的所有设备都不兼容。”。我的设备屏幕尺寸不同,操作系统版本从 2.1 到 2.4 不等。

在发布主页中,显示“此应用程序可用于超过 679 台设备。”它包括 Motorola Photon 4g 和我在市场上注册的所有其他设备下载。

我已经根据 stackoverflow 中针对此类问题给出的所有答案更新清单文件和 java 文件,多次重新发布代码。要列出它,

  • 删除用户权限
  • 更新所有支持屏幕的组合
  • 多次刷新发布页面中的保存按钮
  • 卸载我的手机中的应用程序(但我还有一些设备没有测试我的应用程序但仍然显示不兼容)
  • 运行 aapt 工具
  • 从 lib 文件夹中删除 jar 文件并在 Eclipse 中外部引用该文件
  • 还有一些我想不起来的变化

下面是清单文件

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.test.myapps"
android:versionCode="5" android:versionName="1.4">
<uses-sdk android:minSdkVersion="7" />
<supports-screens android:largeScreens="true"
    android:normalScreens="true" android:smallScreens="true"
    android:resizeable="true" android:anyDensity="true" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.SET_WALLPAPER" /> 
<uses-permission android:name="android.permission.SEND_SMS"/> 
<application android:icon="@drawable/app_icon" android:label="@string/app_name">
<activity android:name="com.test.myapps.HomePage" android:label="@string/app_name">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

     <activity android:name="com.google.ads.AdActivity"
          android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize">
     </activity>
</application>
</manifest>

请帮我解决这个问题。提前致谢....

【问题讨论】:

    标签: android cordova google-play incompatibility


    【解决方案1】:

    您是否专门运行了“aapt dump badging <.apkfile> ?

    Android 文档here

    我遇到了类似的问题。原来我需要在我的清单中使用 android:required="false" 用于多种用途,例如:

    < uses-feature android:name="android.hardware.telephony" android:required="false" >
    

    完整清单示例here。转储标志的结果表明,市场增加了几个用途特征(有点 aapt 输出进一步下降),主要排除了三星设备。

    【讨论】:

    • 感谢格式修正 barmaley!我也从元 editing-help 学到了更多。
    【解决方案2】:

    检查是否有兼容性,需要从:

      android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize">
    

    您确定您查看的是最新版本的 APK,而不是旧版本。您将需要激活它。不仅上传..

    【讨论】:

    • 感谢您的所有意见。它自动工作,没有任何更改。我刚刚等了 5/6 小时。另一个用户在另一个页面上也说过同样的话。我也发生了同样的事情。我的建议是在更改任何内容之前等待几个小时(如果应用程序在模拟器中运行)@Libby,我已经运行了 aapt 并相应地更新了清单。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-10
    • 1970-01-01
    相关资源
    最近更新 更多