更新后,APK支持的设备比以前少

owe*_*owe 7 android android-manifest android-2.2-froyo android-2.3-gingerbread zbar

我有一个相对简单的应用程序,已经在谷歌的Play商店.

现在我已经更新了这个应用程序.此更新的一点是我包含了ZBar-Scanner.其余的变化很小,不应该对我的问题产生任何影响.

我只是将我应用程序的最新版本放在Play-Store中,然后收到以下警告:"警告:活动APK支持的设备数量少于以前活动的APK.有些用户不会收到更新."

我从sourceforge.net(http://sourceforge.net/projects/zbar/files/AndroidSDK/)下载了ZBarAndroidSDK-0.2.zip并将其导入我的项目,如README-File中所述.

我在我的HTC Wildfire S( - >版本2.3.5),三星Galaxy 3(GT-I5800 - >版本2.2)和我的Galaxy Nexus( - >版本4.2)上测试了我的本地应用程序.从来没有一个问题.一切正常.我还测试了导出的APK并没有问题.

现在我将此APK添加到Play-Store并更新我的应用程序,我收到测试设备的警告.我的HTC Wildfire和我的三星Galaxy 3都无法更新新版本.

任何人都可以帮我解释一下这个问题是什么?

非常感谢!!!

编辑:

我的清单:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="de.myproject"
android:versionCode="5"
android:versionName="2.0" 
android:installLocation="preferExternal"
>

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

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

<application
    android:uiOptions="splitActionBarWhenNarrow"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    >

    <!-- enable the search dialog to send searches to SearchableActivity throughout the application -->
    <meta-data
        android:name="android.app.default_searchable"
        android:value=".SearchableActivity" />

    <activity
        android:label="@string/app_name"
        android:name=".MainActivity" 
        android:screenOrientation="portrait"
        android:theme="@style/Theme.NoBackground">                                  

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

    </activity>

    <activity
        android:label="@string/app_name"
        android:screenOrientation="landscape"
        android:name=".zbar.ZBarScannerActivity">                            
    </activity>

</application>
Run Code Online (Sandbox Code Playgroud)

和ZBar的清单:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
  package="net.sourceforge.zbar.android.CameraTest"
  android:versionCode="1"
  android:versionName="1.0">

<uses-sdk android:minSdkVersion="8" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.camera.autofocus" />

<application android:label="@string/app_name" >
    <activity android:name="CameraTestActivity"
              android:label="@string/app_name">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>
Run Code Online (Sandbox Code Playgroud)

Pea*_*oto 3

首先,所使用设备的任何更改都必须是清单的结果。这是 Android 市场 (Google Play) 用来确定应用程序可以运行在哪些设备上的唯一信息。正如您所展示的,唯一的区别是您需要自动对焦。如果将此行更改为以下内容,它应该可以工作。

<uses-feature android:name="android.hardware.camera.autofocus" android:required="false">
Run Code Online (Sandbox Code Playgroud)

本质上,这将允许您使用该功能,但不是必需的。这应该允许与所有以前的设备完全兼容。有关更多信息,请参阅此答案

我还应该注意到,我看到您的主应用程序不需要相机,但 zbar 需要相机。这也可能会有所作为。