Запустите сервис живых обоев из активности - PullRequest
2 голосов
/ 31 января 2012
public class ShortCurActivity extends Activity{

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    final Button button = (Button)findViewById(R.id.b_start);
    if(button != null){
     button.setOnClickListener(new View.OnClickListener() {

        public void onClick(View paramView) {
            Intent i = new Intent(ShortCurActivity.this, ServiceWallpaper.class);
                     startService(i);
        }
     });
    }

}

Я просто хочу знать, смогу ли я запустить службу живых обоев из Activity.Я пытался использовать Intent, но он не работает.Некоторые дизайнеры хотят, чтобы я сделал ярлык для Живых обоев, чтобы пользователь мог менять свои живые обои в любое время: (

Ответы [ 2 ]

3 голосов
/ 07 февраля 2013
 if (Build.VERSION.SDK_INT > 15)
            {
                i.setAction(WallpaperManager.ACTION_CHANGE_LIVE_WALLPAPER);
                String pkg = WallpaperService.class.getPackage().getName();
                String cls = WallpaperService.class.getCanonicalName();
                i.putExtra(WallpaperManager.EXTRA_LIVE_WALLPAPER_COMPONENT, new ComponentName(pkg, cls));
            }
            else
            {
                i.setAction(WallpaperManager.ACTION_LIVE_WALLPAPER_CHOOSER);
            }
            startActivityForResult(i, 0);``
0 голосов
/ 16 мая 2012

Кажется, что нет никакого способа программно изменить lwp пользователя.

...