简体   繁体   中英

Why is my list of supported devices empty on google playstore

UPDATE

So to solve the problem I took the approach of starting a new project and little by little try to bring it to the final project. The following snippet seems to be at least partly responsible

<uses-permission android:name="android.permission.CAMERA"/>
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
    <uses-permission android:name="android.permission.RECORD_AUDIO"/>
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>

    <uses-feature android:name="android.hardware.camera"/>
    <uses-feature android:name="android.hardware.camera2.autofocus"/>

before I added that snippet, the list had 9202 devices, after I add the snippet the list dropped to 0 .

ORIGINAL QUESTION

I have published many apps in the past using eclipse. This is the first time I am publishing an app that is developed using android studio. Since my app is not visible in the mobile play store (ie through android) and says This app is incompatible with all of your devices. in the web store, I started investigating to find out why. To my great suprize I find this as my Supported devices list

在此处输入图片说明

This is crazy as I have never accounted this before. Any ideas what I may be doing wrong? I have no problem uploading my release apk to my device using the adb tool. And my gradle does say

defaultConfig {

        applicationId "com.company.android"
    
    minSdkVersion 14

        targetSdkVersion 23
    
    versionCode 6

        versionName "0.0.06"

        multiDexEnabled true

    }

after much troubleshooting, I have now even added to my manifest

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

Here is my full gradle file:

buildscript {
    repositories {
        maven { url 'https://maven.fabric.io/public' }
    }

    dependencies {
        classpath 'io.fabric.tools:gradle:1.+'
    }
}
apply plugin: 'com.android.application'
apply plugin: 'io.fabric'
apply plugin: 'com.google.gms.google-services'

repositories {
    maven { url 'https://maven.fabric.io/public' }
}


android {
    compileSdkVersion 23
    buildToolsVersion "23.0.1"

    defaultConfig {
        applicationId "com.mycompany.android"
        minSdkVersion 14
        targetSdkVersion 23
        versionCode 6
        versionName "0.0.06"
        multiDexEnabled true
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
            zipAlignEnabled true
        }
    }
    dexOptions {
        incremental true
        javaMaxHeapSize "4g"
        preDexLibraries = false
    }

}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile project(path: ':cloud', configuration: 'android-endpoints')
    compile('com.twitter.sdk.android:twitter:1.9.0@aar') {
        transitive = true;
    }
    compile 'com.android.support:multidex:1.0.0'
    compile 'com.android.support:design:23.0.1'
    compile 'com.android.support:recyclerview-v7:23.0.1'
    compile 'com.android.support:cardview-v7:23.0.1'
    compile 'com.google.android.gms:play-services-analytics:8.1.0'
    compile 'com.squareup.okhttp:okhttp:2.5.0'
    compile 'com.squareup.picasso:picasso:2.5.2'
    compile 'com.path:android-priority-jobqueue:1.1.2'
    compile 'com.google.android.gms:play-services-gcm:8.1.0'
    compile 'com.google.android.gms:play-services-appindexing:8.1.0'
    compile 'com.google.android.gms:play-services-location:8.1.0'
    compile 'com.google.android.gms:play-services-ads:8.1.0'
    compile('com.crashlytics.sdk.android:crashlytics:2.5.2@aar') {
        transitive = true;
    }
}

And I already checked that the apk is activated.

Manifest:

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

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

    <uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS"/>
    <uses-permission android:name="android.permission.INTERNET"/>
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
    <uses-permission android:name="android.permission.WRITE_SYNC_SETTINGS"/>
    <!-- for notifications -->
    <uses-permission android:name="android.permission.WAKE_LOCK"/>
    <uses-permission android:name="com.google.android.c2dm.permission.RECEIVE"/>
    <uses-permission android:name="com.company.android.permission.C2D_MESSAGE"/>
    <!-- Additional permission for camera -->
    <uses-permission android:name="android.permission.CAMERA"/>
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
    <uses-permission android:name="android.permission.RECORD_AUDIO"/>
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>

    <uses-feature android:name="android.hardware.camera"/>
    <uses-feature android:name="android.hardware.camera2.autofocus"/>

    <application
        android:name=".Application"
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme">

        <!-- ACTIVITIES -->
        <activity
            android:name=".MainActivity"
            android:configChanges="keyboard|keyboardHidden|orientation|screenSize|screenLayout|uiMode|screenSize|smallestScreenSize"
            android:label="@string/app_name"
            android:launchMode="singleTop"
            android:windowSoftInputMode="adjustPan">
            <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.SEARCH"/>
            </intent-filter>
            <!-- deep linking for search engine -->
            <intent-filter android:label="@string/app_name">
                <action android:name="android.intent.action.VIEW"/>

                <category android:name="android.intent.category.DEFAULT"/>
                <category android:name="android.intent.category.BROWSABLE"/>
                <!-- Accepts URIs that begin with "http://www.company.com” -->
                <data
                    android:host="www.company.com"
                    android:scheme="http"/>
            </intent-filter>

            <intent-filter android:label="@string/app_name">
                <action android:name="android.intent.action.VIEW"/>

                <category android:name="android.intent.category.DEFAULT"/>
                <category android:name="android.intent.category.BROWSABLE"/>
                <!-- Accepts URIs that begin with "http://www.company.com/” -->
                <data
                    android:host="www.company.com"
                    android:pathPrefix="/"
                    android:scheme="http"/>
            </intent-filter>

            <intent-filter android:label="@string/app_name">
                <action android:name="android.intent.action.VIEW"/>

                <category android:name="android.intent.category.DEFAULT"/>
                <category android:name="android.intent.category.BROWSABLE"/>
                <!-- Accepts URIs that begin with "https://www.company.com” -->
                <data
                    android:host="www.company.com"
                    android:scheme="https"/>
            </intent-filter>

            <intent-filter android:label="@string/app_name">
                <action android:name="android.intent.action.VIEW"/>

                <category android:name="android.intent.category.DEFAULT"/>
                <category android:name="android.intent.category.BROWSABLE"/>
                <!-- Accepts URIs that begin with "http://www.company.com/” -->
                <data
                    android:host="www.company.com"
                    android:pathPrefix="/"
                    android:scheme="https"/>
            </intent-filter>

            <meta-data
                android:name="android.app.searchable"
                android:resource="@xml/searchable"/>
        </activity>
        <activity
            android:name=".CameraActivity"
            android:configChanges="orientation|screenSize"
            android:label="@string/title_activity_camera"/>
        <activity
            android:name=".SettingsActivity"
            android:label="@string/title_activity_settings"/>

        <activity
            android:name=".DogsWebPageActivity"
            android:label="@string/title_activity_Dogs_web_page"
            android:theme="@style/AppTheme">
            <!--<meta-data-->
            <!--android:name="android.support.PARENT_ACTIVITY"-->
            <!--android:value=".MainActivity"/>-->
        </activity>
        <!-- RECEIVERS -->
        <!-- for cloud messages -->
        <receiver
            android:name="com.google.android.gms.gcm.GcmReceiver"
            android:exported="true"
            android:permission="com.google.android.c2dm.permission.SEND">
            <intent-filter>
                <action android:name="com.google.android.c2dm.intent.RECEIVE"/>
                <category android:name="com.company.android"/>
            </intent-filter>
            <intent-filter>
                <action android:name="com.google.android.c2dm.intent.REGISTRATION"/>

                <category android:name="com.company.android"/>
            </intent-filter>
        </receiver>

        <!-- fragments for their adapters -->


        <!-- SERVICES -->
        <!-- for cloud messages -->
        <service
            android:name="com.company.android.data.service.companyGcmListenerService"
            android:exported="false">
            <intent-filter>
                <action android:name="com.google.android.c2dm.intent.RECEIVE"/>
            </intent-filter>
        </service>
        <service
            android:name=".data.service.companyInstanceIDListenerService"
            android:exported="false">
            <intent-filter>
                <action android:name="com.google.android.gms.iid.InstanceID"/>
            </intent-filter>
        </service>
        <service
            android:name=".data.service.RegistrationIntentService"
            android:exported="false">
        </service>

        <!-- The DuckSyncAdapter service -->
        <service
            android:name=".data.contentprovider.sync.DuckSyncService"
            android:exported="true">
            <intent-filter>
                <action android:name="android.content.SyncAdapter"/>
            </intent-filter>

            <meta-data
                android:name="android.content.SyncAdapter"
                android:resource="@xml/syncadapter"/>
        </service>

        <!-- syncadapter's dummy authenticator service -->
        <service android:name=".data.contentprovider.sync.DuckAuthenticatorService">
            <intent-filter>
                <action android:name="android.accounts.AccountAuthenticator"/>
            </intent-filter>

            <meta-data
                android:name="android.accounts.AccountAuthenticator"
                android:resource="@xml/authenticator"/>
        </service>

        <!-- for adapters: data cache/providers -->
        <service
            android:name=".data.service.DogsService"
            android:exported="false"/>
        <service
            android:name=".data.service.RemoteDataService"
            android:exported="false"/>
        <service
            android:name=".data.service.VideoSearchService"
            android:exported="false"/>
        <!-- PROVIDERS -->
        <!-- Duck tab content provider -->
        <provider
            android:name=".data.contentprovider.VideoProvider"
            android:authorities="@string/content_authority"
            android:exported="false"
            android:syncable="true"/>
        <provider
            android:name=".data.contentprovider.companySearchRecentSuggestionsProvider"
            android:authorities="com.company.android.data.contentprovider.companySearchRecentSuggestionsProvider"/>

        <meta-data
            android:name="com.google.android.gms.version"
            android:value="@integer/google_play_services_version"/>
        <meta-data
            android:name="io.fabric.ApiKey"
            android:value="somestring"/>

    </application>

</manifest>

There is no android.hardware.camera2.autofocus , at least not listed in the docs for <uses-feature> . There is android.hardware.camera.autofocus (sans the 2 ). Unless you have seen your <uses-feature> documented somewhere, try switching to the one without the 2 and see if you have better luck.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM