AndroidManifest.xml
如果我设法在选项卡中获得“与您的所有设备兼容的应用程序”并且我在应用程序选项卡中没有成功,我已经对我的一个应用程序进行了四次更新。
我有以下设备
- EEpad TF101 (ICE_CREAM_SANDWICH)
- 宏基液体 Z200(奇巧)
- MOTO G(棒棒糖)
更新
我已经下载了一个 SDKmin 版本,删除support-screen
并android:supportsRtl
我为 API 14+ 设备定义了 API 在所有这些设备中,我都可以安装它,AndroidStudio
但在 google play 选项卡中,我发现它与任何设备都不兼容。
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="pro.caminsderonda.app.caminsderonda"
android:installLocation="auto">
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_WIFI_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.READ_EXTERNAL_STORAGE" />
<application
android:name="pro.caminsderonda.app.caminsderonda.MyApplication"
android:allowBackup="true"
android:fullBackupContent="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme">
<activity
android:name="pro.caminsderonda.app.caminsderonda.SplashActivity"
android:configChanges="keyboardHidden|orientation|screenSize"
android:launchMode="singleInstance"
android:theme="@style/AppTheme.SplashTheme">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name="pro.caminsderonda.app.caminsderonda.MainActivity"
android:label="@string/app_name"
android:theme="@style/AppTheme.NoActionBar">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data
android:host="caminsderonda.wordpress.com"
android:pathPrefix="/"
android:scheme="https" />
</intent-filter>
</activity>
<activity
android:name="pro.caminsderonda.app.caminsderonda.DetailedActivity"
android:theme="@style/AppTheme.NoActionBar" />
<activity
android:name="pro.caminsderonda.app.caminsderonda.SettingsActivity"
android:label="@string/settings_activity_title" />
<activity
android:name="pro.caminsderonda.app.caminsderonda.AboutActivity"
android:label="@string/about_title_activity"
android:theme="@style/AppTheme.NoActionBar" />
</application>
</manifest>
而在 app.graddle
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion '23.0.2'
defaultConfig {
applicationId 'app.caminsderonda.pro'
minSdkVersion 14
targetSdkVersion 23
versionCode 214
versionName '2.1.4'
signingConfig signingConfigs.config
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
productFlavors {
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.4.0'
compile 'com.android.support:design:23.4.0'
compile 'com.android.support:recyclerview-v7:23.4.0'
compile 'com.android.support:cardview-v7:23.4.0'
compile 'eu.the4thfloor.volley:com.android.volley:2015.05.28'
compile 'com.android.support:palette-v7:23.4.0'
compile 'com.github.bumptech.glide:glide:3.6.1'
compile 'com.android.support:support-v4:23.4.0'
}
在设备兼容性部分的控制台内
兼容:10685
我的所有设备都有一个绿色检查,但即便如此,在用户看到的 playstore 选项卡中,我得到“此应用程序与您的任何设备都不兼容”我将它们都与同一个帐户相关联。
如果您可以使用关联帐户从桌面访问应用程序文件,那么对于拥有 MotoG 的人来说,我们将不胜感激,这样您就可以查看它是否显示它是否与您的设备兼容
在此处给我留言,了解如何将兼容性通知给您。
更新/已解决
我终于找到了为什么它告诉我我的设备不兼容。
如果该应用程序是付费的,因为 Google 不允许同一开发者购买它,则会出现该消息。
我最后一次测试是取出一个新的app de pago
,然后放上去gratis
付费时:此应用与您的任何设备均不兼容。
当我使它免费时:此应用程序与您的所有设备兼容。
谢谢大家,对于答案,我已将为我提供最兼容设备的那个标记为正确。
首先,我们可以排除它是因为
minSdkVersion
它,因为您将它定义为 15(4.0.3 及更高版本)但我看到您已经
android:supportsRtl="true"
支持 api 17 及更高版本(Android 4.2、4.2.2)如果所有密度和尺寸都支持它,请尝试删除:
就我而言,我不添加
supports-screens
,因为该应用程序天生适用于任何屏幕密度。如果在您的
AndroidManifest.xml
元素中包含 use<uses-feature>
,用于过滤不符合硬件或软件特性的元素,它们可以标记为“不需要”,我在答案的开头没有包含它们,因为您没有在您的 manifest.xml 中有这种类型的元素,但我将其添加以记录此答案。例如,如果您在应用程序中定义了蓝牙和相机的使用,对于某些不具备这些特性的设备,它们将被过滤掉,您将无法在 playstore 中找到它们:
但是您可以将它们定义为“不需要”,以便没有这些功能的设备可以使用您的应用程序:
了解更多信息; https://developer.android.com/guide/topics/manifest/uses-feature-element.html
更新:
仔细查看您的 AndroidManifest.xml 并根据暗示某些硬件功能要求的权限列表
要
ACCESS_WIFI_STATE
添加:这意味着您的应用程序不会过滤不支持Wifi的设备。
某些设备不支持某些功能。例如前置摄像头、Wi-Fi 接入或其他。出于这个原因,请始终尝试在您的权限中包含一个,
requiered=false
除非您的应用程序必须 100% 地运行。另外,检查 proguard-android.txt 和 proguard-rules.pro 文件中的 SDK 编号是否与 gradle 中的编号匹配。这应该是自动的,但是来自 Phonegap,可能这些还没有正确更新。
希望对你有帮助
问候。