JellyBean 在抓图时表现不同
Posted
技术标签:
【中文标题】JellyBean 在抓图时表现不同【英文标题】:JellyBean behaves differently with picture capturing 【发布时间】:2016-07-24 22:20:29 【问题描述】:我正在为 Jellybean、KitKat 和 Lollipop 以及几种不同的设备开发一个 android 应用程序。
在项目开始时,我使用 Jellybean API 库和目标 API 'anroid-18' 使用 'Samsung Galaxy Note 2014 版'。 几个月后,设备的操作系统开始升级到 KitKat 操作系统,所以我将库更改为“android-19”,版本号为 4.4.2。
我现在有一个名为 Galaxy S tab 2 的新设备。
我现在有三个版本和两个设备,我的默认 API 是 4.4.2。
使用app拍照时出现的问题:
if (Build.VERSION.SDK_INT >= AlopexBuild.VERSION_SUPPORT.KITKAT)
Intent mediaScanIntent
= new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE);
Uri contentUri = Uri.parse("file://"+ path);
mediaScanIntent.setData(contentUri);
sendBroadcast(mediaScanIntent);
else
sendBroadcast(
new Intent(Intent.ACTION_MEDIA_MOUNTED, Uri.parse("file://"+ path)));
以下代码在Jellybean中没有问题:
Intent mediaScanIntent
= new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE);
Uri contentUri = Uri.parse("file://"+ path);
mediaScanIntent.setData(contentUri);
sendBroadcast(mediaScanIntent);
为什么会这样?
Jellybean OS + Kitkat API = 失败
Kitkat 操作系统 + Kitkat API = 好的
棒棒糖操作系统 + KitKat API = 好的
有问题的代码是
sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED, Uri.parse("file://"+ path)));
【问题讨论】:
【参考方案1】:在发布新的 KitKat 和 Lolipop 操作系统并从 Jellybean 迁移时,根据每个操作系统的 wiki 文章参考,它们更改为一种新的运行时环境。代码只在这个新环境中兼容,您需要为其他环境(如 Jellybean)尝试不同的方法。 见here和here
【讨论】:
以上是关于JellyBean 在抓图时表现不同的主要内容,如果未能解决你的问题,请参考以下文章
为啥origin8.0做饼状图时,图像中的数据与原始数据不同