我正在尝试调用方法通道以应用墙纸。 我以this回购作为参考。
void _setWallpaper() async {
showProgressDialog();
var file = await DefaultCacheManager().getSingleFile(widget.post.url);
try {
final int result = await platform.invokeMethod('setWallpaper', file.path);
print('Wallpaer Updated.... $result');
} on PlatformException catch (e) {
print("Failed to Set Wallpaer: '${e.message}'.");
}
Navigator.pop(context);
}
该对话框包含CircularProgressIndicator和Text,但CircularProgressIndicator冻结,整个UI有时无响应。墙纸已应用,UI响应。
也许是由于图像的大小(大约5-10MB)。