应用程序突然变得与设备不兼容(Galaxy Tab 2)

时间:2013-04-19 22:19:30

标签: android galaxy incompatibility

我有一个应用程序突然(今天)变得与它正在处理的设备不兼容。该应用程序是Dragon Lords,设备是Samsung Galaxy Tab 2.任何人都知道这里可能发生了什么?

最后一个apk上传了2个月前,一切正常。今天我有一个玩家报告,在市场上该应用程序与他的设备不兼容。我检查了我的Galaxy Tab 2,这是同一个故事。我的设备没有扎根,所以我真的不知道发生了什么。

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
android:installLocation="auto"
package="mds.DragonLords"
android:versionCode="25"
android:versionName="1.2.19" >

<uses-sdk
    android:minSdkVersion="8"
    android:targetSdkVersion="8" />

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="com.android.vending.BILLING" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />

<application
    android:icon="@drawable/icon"
    android:label="@string/app_name"
     >
    <activity
        android:configChanges="keyboardHidden|orientation"
        android:name="com.tapjoy.TJCOffersWebView" />
    <activity
        android:configChanges="keyboardHidden|orientation"
        android:name="com.tapjoy.TapjoyFeaturedAppWebView" />
    <activity
        android:configChanges="keyboardHidden|orientation"
        android:name="com.tapjoy.TapjoyVideoView" />
    <activity
        android:configChanges="keyboardHidden|orientation"
        android:label="@string/app_name"
        android:name="mds.DragonLords.nowe.Splash"
        android:screenOrientation="portrait"
        android:theme="@android:style/Theme.NoTitleBar.Fullscreen" >
        <intent-filter >
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity android:name=".nowe.Tester" >
    </activity>
    <activity
        android:configChanges="keyboardHidden|orientation"
        android:label="@string/app_name"
        android:name="mds.DragonLords.nowe.Main"
        android:screenOrientation="portrait"
        android:theme="@android:style/Theme.NoTitleBar.Fullscreen" >
    </activity>

    <service android:name="mds.DragonLords.nowe.billing.BillingService"/>

    <receiver android:name="mds.DragonLords.nowe.billing.BillingReceiver">
        <intent-filter >
            <action android:name="com.android.vending.billing.IN_APP_NOTIFY" />
            <action android:name="com.android.vending.billing.RESPONSE_CODE" />
            <action android:name="com.android.vending.billing.PURCHASE_STATE_CHANGED"/>
        </intent-filter>
    </receiver>
</application>

</manifest>

1 个答案:

答案 0 :(得分:5)

你的清单有

<uses-permission android:name="android.permission.READ_PHONE_STATE">

该权限会自动假定您使用android.hardware.telephony功能(因为只有手机有READ_PHONE_STATE)。根据{{​​3}}文档,如果您需要android.hardware.telephony功能,您的应用程序将显示为不兼容。添加行

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

确保没有电话的设备仍然显示为兼容。确保您的应用程序正确处理没有电话的设备(因为尝试读取电话状态会使这些设备崩溃)。