Живые обои с MainActivity - PullRequest
       1

Живые обои с MainActivity

1 голос
/ 11 января 2012

У меня есть 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, я получаю тост с таким сообщением: «приложение не установлено на вашем телефоне».Как я могу это исправить?

1 Ответ

6 голосов
/ 11 января 2012

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">
...