带有MainActivity的动态壁纸

时间:2012-01-11 14:03:01

标签: android android-manifest live-wallpaper

我有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没有安装在你的手机上”。 我该如何解决?

1 个答案:

答案 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">