Google Play商店:"此应用与您的设备不兼容"

时间:2016-02-13 12:39:24

标签: android google-play android-manifest

不重复

场合
我的应用专为智能手机设计,目前在Google Play商店中显示我的应用与我的设备不兼容,并且不支持任何设备。我已经在Google Play商店上传了我的应用程序APK 9次,每次都发生了不同的更改。我已经经历了15个以上的堆栈溢出问题,并尝试了不同的答案建议,没有任何帮助或没有任何效果。

我尝试过的内容和目前的内容
 1.在AndroidManifest中尝试兼容屏幕标记。
 2.在AndroidManifest中尝试支持屏幕标记。
 3.尝试两者
 4. 从AndroidManifest删除了一些权限
 5.所有用途 - 功能目前都有" false "作为要求。
 6.必须使用功能" android.hardware.telephony "正如Google Play商店向我提供了我的 APK专为平板电脑设计的提示。
 7.删除了不需要的和不必要的文件和代码片段(虽然我有一些Java文件,我已经将该类的整个代码片段作为评论,我将来可能会要求)。
 8.在mipmap文件夹中放置不同大小的应用程序徽标(虽然我不确定这是否真的会产生影响)。
 9.目前,我只有一个布局文件夹,并没有为不同的屏幕尺寸设计不同的布局或布局文件夹,因此我不确定这是否会产生影响。

我的怀疑
 1.可能是应用程序主题,因为我没有在" 应用程序"中定义 apptheme 。 AndroidManifest文件中的标记。但是,我只在应用程序的父活动中定义了apptheme。
 2.对于不同的屏幕尺寸,可能没有不同的布局
 3.可能是其中一个gradle构建文件,我可能需要更改某些内容,但是,我不知道它可能是什么。
 4.可能来自AndroidManifest。

以下是我的AndroidManifest.xml文件。

<?xml version="1.0" encoding="utf-8"?>
<manifest
    xmlns:android="http://schemas.android.com/apk/res/android"
    package="my package">

    <compatible-screens>
        <!-- all small size screens -->
        <screen android:screenSize="small" android:screenDensity="ldpi" />
        <screen android:screenSize="small" android:screenDensity="mdpi" />
        <screen android:screenSize="small" android:screenDensity="hdpi" />
        <screen android:screenSize="small" android:screenDensity="xhdpi" />
        <screen android:screenSize="small" android:screenDensity="480" />
        <screen android:screenSize="small" android:screenDensity="640" />

        <!-- all normal size screens -->
        <screen android:screenSize="normal" android:screenDensity="ldpi" />
        <screen android:screenSize="normal" android:screenDensity="mdpi" />
        <screen android:screenSize="normal" android:screenDensity="hdpi" />
        <screen android:screenSize="normal" android:screenDensity="xhdpi" />
        <screen android:screenSize="normal" android:screenDensity="480" />
        <screen android:screenSize="normal" android:screenDensity="560" />
        <screen android:screenSize="normal" android:screenDensity="640" />
    </compatible-screens>

    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
    <uses-permission android:name="android.permission.DOWNLOAD_WITHOUT_NOTIFICATION" />
    <uses-permission android:name="android.permission.INTERNET" />

    <uses-feature
        android:name="android.hardware.sensor.accelerometer"
        android:required="false" />
    <uses-feature
        android:name="android.hardware.sensor.compass"
        android:required="false" />
    <uses-feature
        android:name="android.hardware.sensor.gyroscope"
        android:required="false" />
    <uses-feature
        android:name="android.hardware.wifi"
        android:required="false" />

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

    <application
        android:allowBackup="true"
        android:icon="@mipmap/applogo"
        android:label="my app name"
        android:supportsRtl="true"
        android:fullBackupContent="true">

        <service
            android:name="com.indooratlas.android.sdk.IALocationService"
            android:exported="false"
            android:label="IALocationService" />

        <meta-data
            android:name="com.indooratlas.android.sdk.API_KEY"
            android:value="My Key" />

        <meta-data
            android:name="com.indooratlas.android.sdk.API_SECRET"
            android:value="My key" />

        <activity
            android:name=".MainActivity"
            android:screenOrientation="portrait"
            android:theme="@style/AppTheme">

            <intent-filter>

                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />

            </intent-filter>

            <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="my package" android:pathPrefix="/main"
                    android:scheme="http" />
            </intent-filter>
        </activity>

        <activity
            android:name=".IPS"
            android:screenOrientation="portrait"
            android:parentActivityName=".MainActivity"> 
        </activity>

        <activity android:name=".BI"
            android:screenOrientation="portrait"
            android:parentActivityName=".MainActivity">
         </activity>

        <activity android:name=".SH"
            android:windowSoftInputMode="adjustPan"
            android:screenOrientation="portrait"
            android:parentActivityName=".MainActivity">
        </activity>

        <activity android:name=".Help"
            android:screenOrientation="portrait"
            android:parentActivityName=".MainActivity">
        </activity>

    </application>

</manifest> 

以下是我的build.gradle(app)文件。

apply plugin: 'com.android.application'

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.2"

    defaultConfig {
        applicationId "my package"
        minSdkVersion 11
        targetSdkVersion 23
        versionCode 9
        versionName "9.0"
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            }
        }

}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    testCompile 'junit:junit:4.12'
    compile 'com.android.support:appcompat-v7:23.1.1'
    compile 'com.indooratlas.android:indooratlas-android-sdk:2.0.0-beta@aar'
    compile 'com.davemorrissey.labs:subsampling-scale-image-view:3.4.1'
} 

我甚至可能尝试过比我在此处所说的更多。 如果有人知道AndroidManifest文件中有什么问题或者我的build.gradle文件有什么问题,或者根据我的怀疑可能出错,那么我将不胜感激。非常感谢提前。

2 个答案:

答案 0 :(得分:1)

请删除这些所有行,然后重试。

<compatible-screens>
    <!-- all small size screens -->
    <screen android:screenSize="small" android:screenDensity="ldpi" />
    <screen android:screenSize="small" android:screenDensity="mdpi" />
    <screen android:screenSize="small" android:screenDensity="hdpi" />
    <screen android:screenSize="small" android:screenDensity="xhdpi" />
    <screen android:screenSize="small" android:screenDensity="480" />
    <screen android:screenSize="small" android:screenDensity="640" />

    <!-- all normal size screens -->
    <screen android:screenSize="normal" android:screenDensity="ldpi" />
    <screen android:screenSize="normal" android:screenDensity="mdpi" />
    <screen android:screenSize="normal" android:screenDensity="hdpi" />
    <screen android:screenSize="normal" android:screenDensity="xhdpi" />
    <screen android:screenSize="normal" android:screenDensity="480" />
    <screen android:screenSize="normal" android:screenDensity="560" />
    <screen android:screenSize="normal" android:screenDensity="640" />
</compatible-screens>

如果您想添加平板电脑支持,请执行您的应用设计响应并将平板电脑屏幕截图上传到Playstore。是的。

希望它适合你。

答案 1 :(得分:0)

通过使用内置样式和主题,您的应用程序将自然地遵循每个新版本的Android的最新外观和感觉。

因此,在应用程序标记中,您需要添加主题,至少内置一个但没有定义主题,没有可能运行“无主题”应用程序的设备。所以,

1)确保你在styles.xml下面有这样的东西:

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
        <!-- Customize your theme here. -->
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
</style>

2)并在申请标签的清单中

android:theme="@style/AppTheme"
你能检查一下吗