我有livewallpaper,livewallpaper的设置活动以及标准的MainActivity。 关键是livewallpaper不能与MainActivity一起使用。 当我的清单看起来像这样:
<uses-sdk android:minSdkVersion="7" />
<uses-permission android:name="android.permission.BIND_WALLPAPER"/>
<uses-feature android:name="android.software.live_wallpaper" />
<application android:icon="@drawable/icon"
android:label="simea">
<!-- >android:permission="android.permission.BIND_WALLPAPER">-->
<service android:name=".LiveWallpaper"
android:label="@string/app_name"
android:icon="@drawable/icon">
<intent-filter>
<action android:name="android.service.wallpaper.WallpaperService" />
</intent-filter>
<meta-data android:name="android.service.wallpaper"
android:resource="@xml/livewallpaper" />
</service>
<activity android:name=".MainActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:label="@string/livewallpaper_settings"
android:name=".LiveWallpaperSettings"
android:theme="@android:style/Theme.Light.WallpaperSettings"
android:exported="true"
android:icon="@drawable/icon">
</activity>
</application>
我可以运行MainActivity,但我不能将livewallpaper与我的主屏幕绑定。我看到livewallpaper的预览,我可以更改设置,但是当我点击“设置壁纸”按钮时,没有效果。
当我取消注释这一行时:
<!-- >android:permission="android.permission.BIND_WALLPAPER">-->
并对此发表评论:
<uses-permission android:name="android.permission.BIND_WALLPAPER"/>
livewallpaper在我的主屏幕上工作得很好,但是当我尝试运行MainActivity时,我得到了这样的消息:“app没有安装在你的手机上”。 我该如何解决?
答案 0 :(得分:6)
android:permission="android.permission.BIND_WALLPAPER"
应放在service
标记内:
<service android:name=".LiveWallpaper"
android:label="@string/app_name"
android:icon="@drawable/icon"
android:permission="android.permission.BIND_WALLPAPER">