【问题标题】:My device is not supported by google play although it has a valid API versiongoogle play 不支持我的设备,尽管它具有有效的 API 版本
【发布时间】:2017-08-14 05:38:41
【问题描述】:

所以我已将我的应用程序上传到 google play,问题是它仅支持 13k 设备中的 800 台设备。

我检查了目标 API,但不是问题所在。 它与在我的应用程序中使用 NDK 有什么关系吗? 还是因为我在为某些屏幕制作动画时使用了 openGL?

请在这方面需要您的帮助和建议。

<?xml version="1.0" encoding="utf-8"?>

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />

<uses-feature
    android:name="android.hardware.camera"
    android:required="true" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.audio.low_latency" />

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

    <meta-data
        android:name="io.fabric.ApiKey"
        android:value="YOUR_API_KEY" />

    <meta-data
        android:name="com.facebook.sdk.ApplicationId"
        android:value="@string/facebook_app_id" />

    <activity
        android:name="com.facebook.FacebookActivity"
        android:configChanges="keyboard|keyboardHidden|screenLayout|screenSize|orientation"
        android:label="@string/app_name" />
    <activity
        android:name="com.facebook.CustomTabActivity"
        android:exported="true">
        <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:scheme="@string/fb_login_protocol_scheme" />
        </intent-filter>
    </activity>


    <activity
        android:name=".modules.main.SplashActivity"
        android:label="@string/app_name"
        android:screenOrientation="portrait"
        android:theme="@style/FullScreenTheme">

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

    </activity>


</application>

这是我支持的 CPU 类型

    android.ndk {
    moduleName = "le_sw_soundeffects_example"
    ldLibs.addAll(["android", "atomic", "log", "OpenSLES"]) // armeabi builds
    cppFlags.addAll(["-std=c++14", "-fvisibility=hidden", "-Wall", "-Wno-multichar", "-Wno-non-template-friend", "-Wno-unused-local-typedefs", "-Wno-unknown-warning-option"])
    cppFlags.add("-I${le_sdk_path}/include".toString())
    toolchain = 'gcc'
    stl = 'gnustl_static'
   abiFilters.addAll(["x86_64", "x86", "arm64-v8a", "armeabi-v7a"])
}

【问题讨论】:

  • 请将您的 Android 清单文件添加到您的问题中。以及您使用 NDK 支持的 CPU 类型(armabi、x86 等)
  • @MorrisonChang 这是我的清单和 CPU 类型,非常感谢您的帮助

标签: android opengl-es android-ndk google-play


【解决方案1】:

您正在使用android.hardware.audio.low_latency,它自 Android 4.1 以来一直存在,但仍列在 Android Compatibility Definition Document for Android 7.1第 5.6 节音频延迟强烈推荐,但不是必须

我的猜测是,所有这 800 台可以正常工作的设备都是相对中高端的。所有这些不兼容的设备最终都得到了更便宜的零件和/或制造商没有承担测试费用。

如果您的应用对低延迟音频没有硬性要求,您可以通过在功能请求中添加 android:required="false" 使其成为可选:

&lt;uses-feature android:name="android.hardware.audio.low_latency" android:required="false"/&gt;

低延迟音频的附加链接: https://stackoverflow.com/a/15301628/295004

补充说明 我意识到您没有包含您的最小/目标 SDK。请也检查一下。

【讨论】:

  • 我也应该在清单中包含 min/target SDK 吗?我有它在 gradle 分钟是 17 和目标是 23.... 你知道是什么吓坏了我吗?是该应用程序在测试时在我的三星设备上运行,但在 Play 商店中不再运行。正常吗?
  • 嗯。我会将您的 gradle min/target 添加到您的问题中,以及开发版本与发布版本之间的任何差异。在下载发布版本之前,我会从手机上卸载任何开发版本(只是为了确保)。我会解压缩您的发布构建 apk 以确保它具有您的开发构建 apk 的所有组件。我还会列出您测试过多少种不同的设备。如果可能,还包括任何日志。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-01-12
  • 2015-06-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多