2013-02-20 106 views
2

有一個應用程序無法在特定設備上進行修改。我有這樣的的Manifest.xml:應用程序與Android設備的兼容性

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

而且它適用於HTC轟動的Android 4.0,但由於某種原因它不與三星Galaxy平板2 7.0兼容。 (Android 4)

當我在Android市場上傳它時,我也可以看到平板電腦不受支持。

我不明白原因,請您告訴我爲什麼?

的Manifest.xml:

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    android:installLocation="auto" 
    package="test.newversion" 
    android:versionCode="1" 
    android:versionName="2.0" > 

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

    <uses-permission android:name="android.permission.MANAGE_ACCOUNTS" /> 
    <uses-permission android:name="android.permission.USE_CREDENTIALS" /> 
    <uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS" /> 
    <uses-permission android:name="android.permission.GET_ACCOUNTS" /> 
    <uses-permission android:name="android.permission.INTERNET" /> 
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> 
    <uses-permission android:name="android.permission.ACCESS_MOCK_LOCATION" /> 
    <uses-permission android:name="android.permission.CAMERA" /> 
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
    <uses-permission android:name="android.permission.READ_PHONE_STATE" /> 
    <uses-permission android:name="android.permission.VIBRATE" /> 
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> 
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 

    <application 
     android:icon="@drawable/app_logo" 
     android:label="@string/app_name" > 
     <uses-library android:name="com.google.android.maps" /> 

    </application> 

</manifest> 
+0

您是否要求清單中的硬件功能或屏幕尺寸 – Henry 2013-02-20 09:02:17

+0

@亨利,不,我不這麼認爲。謝謝你的評論。我在問題的最後添加了整個清單文件。 – Ali 2013-02-20 09:09:10

回答

3

某些權限隱含添加對硬件的要求。例如the docu對於CAMERA說:

這將自動執行所有相機功能的清單元素。如果您不需要所有相機功能,或者在相機不可用時無法正常操作,則必須根據需要修改清單,以便安裝在不支持所有相機功能的設備上。

如果你並不需要所有,增加明確uses-feature元素與android:required="false"

+0

是的,將這個添加到我的清單包括660個更多設備的兼容性列表 jcesarmobile 2014-02-12 14:10:57

0

試舉一個運氣在清單下面,如果不按照你的標準被添加

<supports-screens android:smallScreens="false" 
android:normalScreens="true" android:largeScreens="true" 
/> 

改變它

0

最有可能的是,正在創建一個過濾器,這使得市場中刪除某些片的權限。

例如,您在清單中擁有PHONE權限,並且如果平板電腦沒有電話功能,則它們將不兼容。正如Henry所建議的那樣,您可能會看到uses-featureandroid:required="false"

我建議您仔細檢查AndroidManifest.xml並從那裏繼續。