0

我正在尝试开发一个使用 android.service.wallpaper.WallpaperService 显示实时记分卡的动态壁纸。我计划为壁纸设置一个列表首选项,这将使用户可以选择他希望遵循的匹配项。我遵循了这个http://www.vogella.com/articles/AndroidLiveWallpaper/article.html 当我启动设置时,我可以看到偏好。但是当我选择一个时,偏好对话并没有关闭,并且同样没有反映在墙纸中。我检查了 LogCat。不抛出异常。

安卓版本:4.1

清单.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
  package="com.android.livesc.wallpaper" android:versionCode="1"
  android:versionName="1.0">
  <application android:icon="@drawable/icon" android:label="@string/app_name">


    <service android:name="MyWallpaperService" android:enabled="true"
      android:permission="android.permission.BIND_WALLPAPER" android:label="Wallpaper Example ">
      <intent-filter>
        <action android:name="android.service.wallpaper.WallpaperService"></action>
      </intent-filter>
      <meta-data android:name="android.service.wallpaper"
        android:resource="@xml/mywallpaper"></meta-data>
    </service>
    <activity android:label="@string/app_name" android:name=".MyPreferencesActivity"
      android:theme="@android:style/Theme.Light.WallpaperSettings"
      android:exported="true">
    </activity>
  </application>
  <uses-sdk android:minSdkVersion="10" />
  <uses-feature android:name="android.software.live_wallpaper"
    android:required="true"></uses-feature>

</manifest> 

壁纸.xml

<?xml version="1.0" encoding="UTF-8"?>
<wallpaper 
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:thumbnail="@drawable/icon"
  android:description="@string/wallpaper_description"  
  android:settingsActivity="com.android.livesc.wallpaper.MyPreferencesActivity"/> 

请帮帮我。。

谢谢,卡西克

4

1 回答 1

0
 android:settingsActivity="de.vogella.android.wallpaper.MyPreferencesActivity"

 package="com.android.livesc.wallpaper"

我想,这就是问题所在。你必须把你的设置文件所在的包名放在哪里。

这是我的代码:

<wallpaper xmlns:android="http://schemas.android.com/apk/res/android"
           android:settingsActivity="com.aavid.wallpapers.SettingActivity"
          android:thumbnail="@drawable/icon" 
          android:description="@string/description"
/>

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="com.aavid.wallpapers"
      android:versionCode="1"
      android:versionName="1.0">
    <uses-sdk android:minSdkVersion="7" />
于 2012-08-31T12:12:18.453 回答