0

我最近发布了关于 Play 商店不允许我在没有 minSdkVersion 的情况下发布我的应用程序的帖子,但是每当我将其设置为高于“1”的任何值时,我的应用程序都无法正常工作(minSdkVersion 破坏程序)。

所以这个人建议将我的 minSdkVersion 设置为 1,这很有效。但是现在当我提交我的应用程序时,即使开发者网站说:

API level: 1-16+
Supported screens: normal-xlarge
OpenGL textures: all

但是应用程序只显示它支持 4.x 下的 Android,我在我的 4.0.4 设备上开发它。我试着四处搜索,发现有些人的服务会弄乱它支持的手机,所以我删除了我所有的服务,因为我真的不需要提交这个版本的应用程序。它仍然没有工作。所以我不知道还能做什么,这是我的 AndroidManifest.xml 如果它有帮助的话......我一直在试图弄清楚为什么我的应用程序现在一周没有工作,仍然没有。我尝试将 targetSdkVersion 设置为 14,但我的应用程序仍然中断。我清理了我的代码,从已经很短的 200 行应用程序中取出所有内容,但它仍然无法正常工作。有什么我不能在 android 应用程序中使用的东西 4. 0 我在我的应用程序中使用?还是只是我的 AndroidManifest?太感谢了!

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.unparalleledsoftware.app.list"
android:versionCode="5"
android:versionName="2.02" >

<uses-sdk
    android:minSdkVersion="1" />

<application
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >
    <activity
        android:name=".MainActivity"
        android:label="@string/title_activity_main" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>

我应该注意,我使用的是 Theme.Holo.Light,但即使我将其更改为 DeviceDefault 它也不起作用。

编辑:

我在我的朋友三星 Galaxy S3 上搜索了该应用程序(它没有出现在他手机上的 Play 商店中),当我通过谷歌搜索该应用程序并点击谷歌上的“安装”按钮并在 Google Play 商店中打开它时并且能够安装。当我在手机 Galaxy Note 上执行相同操作时,它在 Google Play 商店中打开,但随后显示“不兼容”。为什么?它们都在同一版本的操作系统上。为什么我的不兼容,One X 也不兼容,但三星 Galaxy S3 工作...?

编辑:使用 targetSdkVersion 编译时出现这些错误/问题,http ://pastebin.com/mxgWNLdM

4

3 回答 3

0

它在我这边显示为“需要 Android 1.0 及更高版本”,而且您的清单也没有任何问题。它会显示在所有设备上。

但是,如果您的目标是运行 Android 3.0 之前版本的设备,则应避免使用 Holo 主题。最佳实践是创建两个主题 - 一个用于 API 级别 1-10,一个用于 API 级别 11+,并确保 v11 使用 Holo 主题作为父样式。

于 2012-07-16T22:21:06.730 回答
0

我在上面发布了完整的 Manifest 文件,然后我建议向其中添加<supports-screen>条目(上方<applicaion>),如下所示:

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

由于 Play 的过滤机制,缺少它(如果不是故意的)会导致应用程序无法用于任何它应该使用的设备。

于 2012-09-02T09:33:59.153 回答
0

您的清单文件只有一个 minSdk 设置,这是奇怪/坏的,因为根据文档,如果您不设置 targetSdk,它将默认为 minSdk 级别。Android Manifest - 使用 SDK 元素。问题是 1 的 API 设置真的很老,我不会对 Market/Play 有问题感到惊讶。如果你在 ICS 上开发了这个,你应该真的有一个 targetSdk。此外,如果它是为 API 级别 14 开发的,那么您也应该有一个 support-screen 元素。

在最坏的情况下,我会创建一个新项目并复制该 manfest 文件以查找任何缺失的元素。如果您仍然遇到 targetSdk 和 support-screens 的问题,请打开详细的构建消息并查看是否有任何问题。

于 2012-07-17T05:15:57.413 回答