荣耀手机保存图片,刷新图片显示到相册
//发送广播刷新图片不好用 sendBroadcast(new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE, Uri.parse(imageFile.getParent())));
//需要用MediaScannerConnection刷新好用 MediaScannerConnection.scanFile(context,
new String[]{path},
new String[]{"image/jpeg"},
new MediaScannerConnection.OnScanCompletedListener() {
@Override
public void onScanCompleted(String path, Uri uri) {
}
});
只用涉及到用户模块的App基本上就会用到头像替换的功能,类似的代码也是信手沾来,百度、GitHub以及各大论坛好博客一大把,随便粘过来就可以用了。但是。。。有坑。在华为
荣耀
手机
上踩坑了,网上看了下问的人不少,没人回答。觉得很有必要写下来,希望能够帮到更多的朋友。
http://blog.csdn.net/geofferysun/article/details/53432945
private static boolean isHONOR() {
String manufacturer = Build.MANUFACTURER;
if ("HONOR".equalsIgnoreCase(manufacturer)) {
return true;
return false;
2、
添加
相册
刷新
的代码
if(isHONOR()
典型的使用场景就是要设置一个头像,头像需要从系统
图库
或者拍照获得,在android4.4之前,我用的代码没问题,但是今天使用android4.4的时候突然发现不灵了。baidu了一圈,终于解决了。
下面是解决方案:
Java代码
private String[] items = new String[] { "
图库
","拍照" };
最近做一个保存应用的
图片
并插入到系统
图库
同时通知
相册
刷新
的功能,做完后发现在部分华为和三星的
手机
上出现虽然
图片
保存成功了,但是
相册
却找不到
图片
的问题,很困惑,查找文件夹
图片
也已经存在,可就是在
相册
里
刷新
不出来。最后百般尝试找到了解决办法:
保存的方法
添加
写入的动态权限
创建文件路径可选择Environment.getExternalStorageDirectory(),也就是(/stora...
String filePath = data.getStringExtra("path");
MediaMetadataRetriever media = new MediaMetadataRetriever();
media.setDataSource(filePath)
1、 正常启动系统
相册
是这样Intent intent=new Intent(Intent.ACTION_GET_CONTENT);2、 为避免华为问题,最好这样Intent openAlbumIntent = new Intent(Intent.ACTION_PICK);
先说下我在使用X5Webview中碰到的一个bug:在华为Mate9 Android8.0.0
手机
上webview会自动给Html中的
图片
添加
上点击缩放事件。本来这也没什么,但是因为我项目中本来就要实现这个功能,导致
图片
会被打开两次,体验很不好,目前没在别的
手机
上发现相同的问题。
解决思路:先去掉自动
添加
的
图片
点击事件,然后再自己使用webview和js交互实现
图片
的点击缩放预览功能
先贴出...