ファイルパスから壁紙を設定しようとしています。しかし、それは10秒以上かかるので、私のアプリはフリーズします。Android - ファイルパスからの壁紙の設定に予想以上の時間がかかる
public void SET_WALLPAPER_FROM_FILE_PATH (String file_path)
{
Bitmap image_bitmap;
File image_file;
FileInputStream fis;
try {
WallpaperManager wallpaper_manager = WallpaperManager.getInstance(m_context);
image_file = new File(file_path);
fis = new FileInputStream(image_file);
image_bitmap = BitmapFactory.decodeStream(fis);
wallpaper_manager.setBitmap(image_bitmap);
} catch (IOException e) {
e.printStackTrace();
}
}
私が使用しようとしました::
wallpaper_manager.setStream(fis)
の代わり:
wallpaper_manager.setBitmap(image_bitmap);
this answerで提案されているようにここで
は、私が使用しているコードですしかしcouldn壁紙をロードしないでください。誰でも私を案内できますか?
おかげ
まずようdoInBackgroundメソッドの書き込み何かにAsyncTask、 を使用してみてください。そして、あなたはinSampleSizeのようないくつかのオプションで画像をデコードする必要があるかもしれません –
クラスやドキュメントはありますか? –