我在Google Play商店发布了一款Android应用。我开发了它并在一些模拟器,我的移动电话和我的7"片剂。没问题。 我发现在尝试将应用程序从商店安装到平板电脑时,它表示它与我的设备不兼容。我搜索了原因,并在清单中添加了一些行,如下所示:
<supports-screens
android:largeScreens="true"
android:normalScreens="true"
android:smallScreens="true"
android:xlargeScreens="true"
android:resizeable="true"
android:anyDensity="true"
/>
但没有解决。我还补充说:
<uses-feature android:name="android.hardware.telephony" android:required="false">
但没有解决。
该应用使用Google Maps API。不为我的平板电脑列出的唯一原因可能是GPS使用。在开发过程中,我总是模仿我当前的位置,我应该在清单中更改哪些内容,以便允许没有GPS服务的设备与Google Play商店过滤器兼容?
谢谢
已编辑包含整个AndroidManifest.xml文件:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.solinpromex.casajuventudtrescantos"
android:versionCode="4"
android:versionName="1.4" >
<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="19" />
<meta-data android:name="com.google.android.maps.v2.API_KEY"
android:value="not shown here"/>
<meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.CALL_PHONE"></uses-permission>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.CALL_PHONE"></uses-permission>
<uses-feature android:name="android.hardware.telephony" android:required="false"></uses-feature>
<permission android:name="com.solinpromex.casajuventudtrescantos.permission.MAPS_RECEIVE"
android:protectionLevel="signature"/>
<uses-permission android:name="com.solinpromex.casajuventudtrescantos.permission.MAPS_RECEIVE"/>
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<supports-screens
android:largeScreens="true"
android:normalScreens="true"
android:smallScreens="true"
android:xlargeScreens="true"
android:resizeable="true"
android:anyDensity="true"
/>
<uses-feature
android:glEsVersion="0x00020000"
android:required="true"/>
<application
android:allowBackup="true"
android:icon="@drawable/logo192"
android:label="@string/app_name"
android:theme="@style/AppTheme"
>
<meta-data android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version" />
<activity
android:name="com.solinpromex.casajuventudtrescantos.Inicio"
android:label="@string/app_name"
android:screenOrientation="portrait" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
..activities come here
</application>
</manifest>
答案 0 :(得分:4)
正如我在我的问题中所建议的,解决方案是将以下行添加到AndroidManifest.xml:
<uses-feature android:name="android.hardware.location.gps" android:required="false"></uses-feature>
<uses-feature android:name="android.hardware.telephony" android:required="false"></uses-feature>
答案 1 :(得分:1)
您确定没有SDK不兼容吗?您无法安装应用程序可能与平板电脑本身无关,而是与平板电脑上的SDK版本有关。如果平板电脑上的SDK低于应用程序清单文件中指定的最低SDK,则您将无法安装该应用程序。即使您未在清单文件中明确指定此内容,安装支持的最低SDK也将由您在应用程序开发中使用的最高API确定。例如,如果您使用的新相机API android.hardware.camera2
(仅适用于最新的SDK),那么您将无法在未使用最新SDK的任何设备上安装该应用程序。< / p>