Android应用与0设备兼容

时间:2013-05-29 19:52:34

标签: android compatibility

我的应用https://play.google.com/store/apps/details?id=com.picturesexperience.camera在任何移动设备上都看不到。从APK文件安装没有问题(这实际上是我现在如何分发我的应用程序),效果很好,但由于某种原因Google Play没有列出它。有什么建议。

该应用程序使用Zxing的QR码扫描库,其他一切都是自定义编码。

应用程序的清单:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.picturesexperience.camera"
    android:versionCode="2"
    android:versionName="1.4" >

    <uses-sdk android:minSdkVersion="8" android:targetSdkVersion="10" />

    <uses-feature android:name="android.hardware.CAMERA" />
    <uses-permission android:name="android.permission.CAMERA" />
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="com.picturesexperience.camera.MainActivity"
            android:label="@string/app_name"
            android:screenOrientation="portrait"
            android:configChanges="orientation|keyboardHidden" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name=".CameraActivity" android:label="@string/app_name" android:screenOrientation="portrait" android:configChanges="orientation|keyboardHidden" />
        <activity android:name=".UploadActivity" android:label="@string/app_name" android:screenOrientation="portrait" android:configChanges="orientation|keyboardHidden" />
        <activity android:name=".LoginActivity" android:label="@string/app_name" android:screenOrientation="portrait" android:configChanges="orientation|keyboardHidden" />
        <activity android:name=".PictureViewActivity" android:label="@string/app_name" android:screenOrientation="portrait" android:configChanges="orientation|keyboardHidden" />
        <activity android:name="com.google.zxing.client.android.CaptureActivity"
            android:screenOrientation="landscape"
            android:configChanges="orientation|keyboardHidden"
            android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
            android:windowSoftInputMode="stateAlwaysHidden">
            <intent-filter>

    <action android:name="android.intent.action.MAIN"/>
                <category android:name="android.intent.category.DEFAULT"/>
            </intent-filter>
            <intent-filter>
                <action android:name="com.google.zxing.client.android.SCAN"/>
                <category android:name="android.intent.category.DEFAULT"/>
            </intent-filter>
        </activity>
    </application>

</manifest>

5 个答案:

答案 0 :(得分:11)

<uses-feature android:name="android.hardware.CAMERA" />

......应该......

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

uses-featurecase sensitivelower case,因此您实际上已声明您正在使用任何设备上不存在的功能。

答案 1 :(得分:3)

区分大小写

权限和功能区分大小写。请尝试使用以下代码:

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

必需=假

还要确保添加android:required="false"以获得最大的设备兼容性。否则,仍然会排除没有后置摄像头的设备(如nexus 7平板电脑)。

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

此处提供更多信息:http://developer.android.com/guide/topics/manifest/uses-feature-element.html

答案 2 :(得分:1)

我遇到了这个问题,但经过几个小时的灼热后,我在我的应用程序中得到了一个解决方案。 我正在使用

<uses-feature android:name="android.permission.READ_PHONE_STATE" />

虽然它应该是

<uses-permission android:name="android.permission.READ_PHONE_STATE" />

所以我想说,请仔细检查您的权限和羽毛。同时删除应用程序中不需要的权限,这将增加支持设备。

我希望它对你有用。

答案 3 :(得分:0)

我知道回答迟到了,我面临同样的问题。通过将所有用户功能设置为false播放商店仍会显示支持零设备

这是解决方案,希望能帮到某人

 <uses-feature
            android:glEsVersion="0x00020000"
            android:required="true" />

另外

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

希望有所帮助。

答案 4 :(得分:0)

您可以通过检查设备目录来检查您的应用不兼容的原因:

  • 从菜单中选择设备目录

menu entry 'device catalog'

  • 显示所有设备

devices filter

  • 然后选择任何设备,点击蓝色箭头查看详细信息并检查条目“跟踪状态”

enter image description here