Есть ли способ привязки к сервису живых обоев?
У меня есть живые обои, в которые загружены и настроены некоторые ресурсы внутри моего пользовательского класса WallpaperService. Что-то вроде этого:
class MyLiveWallpaperService extends WallpaperService {
MyResources sharedResources;
public onCreate() {
// set up some resources
}
public MyResources getSharedResources() {
return sharedResources;
}
}
И у меня также есть активность предпочтений для этих живых обоев, которая правильно установлена в res / xml / wallpaper.xml. Я хочу как-то предоставить этой PreferencesActivity доступ к этим общим ресурсам. Я знаю, что могу сделать их общедоступными статическими полями, но я предпочитаю более чистое решение - если бы только был способ привязки к службе обоев (чтобы я мог получить доступ к экземпляру MyLiveWallpaperService), что было бы здорово.
В конце концов, в моем случае действия и сервисы выполняются в одном и том же процессе, так что в руководстве по разработке должно работать что-то, описанное как доступ к локальному сервису, НО документыWallpaperService препятствуют переопределению метода onBind(), что делает эту идею невозможной для реализации.
Есть ли другой путь?:)
1 ответ
Я также хотел привязаться к сервису живых обоев, но это невозможно. Если вы хотите передать данные в сервис обоев, возможно, вы можете использовать SharedPreferences в качестве альтернативы использованию статического поля.