Установка обоев в Android - PullRequest
       6

Установка обоев в Android

4 голосов
/ 03 августа 2010

Я занимаюсь разработкой простого приложения, которое устанавливает обои на основе пользовательского ввода. Мне не хватает кода для установки обоев. Я искал это на многих сайтах напрасно. Кто-нибудь может опубликовать пример кода, который устанавливается в качестве обоев в качестве рисунка, который сохраняется в папке res?

Ответы [ 3 ]

4 голосов
/ 04 августа 2010

Работает на Android 1.5 и выше

public void setWallpaper() {
  Context context = this.getBaseContext(); 
  Bitmap mBitmap = BitmapFactory.decodeResource(getResources(), mImageIds[pos]);

  context.setWallpaper(mBitmap);
}
1 голос
/ 06 июня 2013

вы можете попробовать

InputStream inputStream = getResources().openRawResource(wallpaperResource);
Bitmap setWallToDevice = BitmapFactory.decodeStream(inputStream);

try {
getApplicationContext().setWallpaper(setWallToDevice);
} catch (IOException e) {
// TODO Auto-generated catch block
    e.printStackTrace();
}

, однако этот метод устарел, поэтому вы можете использовать

try {
WallpaperManager.getInstance(getApplicationContext()).setResource(wallpaperResource);
} catch (IOException e){
e.printStackTrace();
}
0 голосов
/ 17 июня 2016

Вот как мы можем установить обои из нашего приложения для Android

MainActivity.Java

public class AlarmActivity extends Activity{



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



            WallpaperManager myWallpaperManager
                    = WallpaperManager.getInstance(getApplicationContext());


                    try {
                        myWallpaperManager.setImageResource(R.raw.sample);
                    } catch (IOException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                    }

    }
}

Manifest.xml

Вы должны предоставить это разрешение

<uses-permission android:name="android.permission.SET_WALLPAPER" />
...