我写了我的第一个Android动态壁纸并在Google Play中发布。我首先在我的平板电脑(Manta MID001与Android 2.2)上测试它,从apk文件安装它,它工作正常。我从未有机会在此设备上进行调试,因为USB端口已损坏。
自发布以来已超过一周,但在使用我的平板电脑时,我仍无法在Google Play中看到壁纸。我只能从我的电脑上找到它,它可用here。当找到我的其他应用程序并选择“更多来自此开发者”时,我甚至看不到壁纸。什么可能是错的?
这是我的AndroidManifest.xml文件:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="pl.bartoszwesolowski.ringlivewallpaperdemo"
android:versionCode="2"
android:versionName="1.1" >
<uses-sdk android:minSdkVersion="7" android:targetSdkVersion="7" />
<uses-feature android:name="android.software.live_wallpaper" />
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name">
<service
android:label="@string/app_name"
android:name=".service.RingWallpaperService"
android:permission="android.permission.BIND_WALLPAPER">
<intent-filter>
<action android:name="android.service.wallpaper.WallpaperService" />
</intent-filter>
<meta-data android:name="android.service.wallpaper" android:resource="@layout/wallpaper" />
</service>
</application>
</manifest>
我确信我的平板电脑支持动态壁纸,因为我可以下载并使用其中的几个。我甚至运行这个特殊的壁纸,从apk文件安装它,我没有遇到任何问题。
我在StackOverflow上阅读了其他帖子,建议将以下行添加到清单文件中:
<supports-screens android:smallScreens="true"
android:normalScreens="true"
android:largeScreens="true"
android:xlargeScreens="true" />
我不认为它们是必要的,因为根据Filters on Google Play documentation默认情况下这些选项是正确的:
对于设置android:minSdkVersion或的应用程序 android:targetSdkVersion为3或更低, 元素本身未定义,没有可用的属性。在这 例如,Google Play假定该应用程序是专为此设计的 正常大小的屏幕,并向具有的设备显示应用程序 正常或更大的屏幕。
当android:minSdkVersion或android时: targetSdkVersion设置为4或更高,这是所有属性的默认值 是真的”。通过这种方式,应用程序被认为是支持所有应用程序 屏幕尺寸默认为。