6

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

但是当我在市场上发布相同的内容时,它说“这个应用程序与你的所有设备都不兼容。”。我的设备具有不同的屏幕尺寸,不同的操作系统版本,从 2.1 到 2.4。

在发布主页上,它显示“此应用程序可用于超过 679 台设备。” 它包括摩托罗拉 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>

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

4

2 回答 2

7

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

Android 文档在这里

我有一个类似的问题。原来我需要在我的清单中使用 android:required="false" 来实现几个用途功能,例如:

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

完整清单示例在这里。转储标记的结果表明,市场增加了一些使用功能(aapt 输出稍微下降了一点),主要排除了三星设备。

于 2012-01-25T18:37:20.330 回答
0

Check if there is any compatibility, you need to start with :

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

Are you sure that you were checking the latest version of APK , not the old one. you will need to activate it. not only upload it ..

于 2012-01-25T18:23:26.460 回答