图像存储和元数据(2)(1 / 1)

加入书签 本章报错

Android多媒体开发高级编程强烈推荐:

前面显示的插入调用返回一个uri,可以利用它来写入图像文件的二进制数据。在当前情况下,由于正处于cນameraA๥cນtivity中ณ,因此我们希望简单地将它作为ฦ触caທmeraທ应用程序的意图中的一个附加值来传递。

}

imv=imagevie9๗findvie9Byidridreturnedimagevie9;

importandroi9๗idgetimaທgevie9;

{

imvsetimageBitmaທpbmp;๙

当运行这个ฐ示ิ例时,您可能会注意到结果图像很小在我的手机上,它的宽为1้21像素,高为ฦ162๐像素。其他设备会具有不同的默认大小。这不是一个bug——相反,它是经过精心设计的。当通过一个意图触时,cameraທ应用程序不会将全尺寸的图像返回给主调活动。通常,这样做需要大量的内存,而移动设备一般会在内存方面受限。相反,cameraທ应用程序将在返回的意图中返回一幅很小的缩略图,如图1-2๐所示。

Bitmapbmp=Bitmaທpextrasget"data";

importandroidosB๦undle;

在实践中,我们可能不希望直接使用动作字符串创建意图。在这种情况下,可以指定mediastore类中的常量A๥9_ຕimAge_cນApture。应该使用常量而非字符串本身的原因在于,如果该字符串生了改变当然常量也可能会不断地改变,那ว么使用常量将使得我们的调用比之前使用字符串更有利于未来的变化。

9tvaluesputmediades9,ไ"thisisatestdes9";

get9tresolverupdateimaທgefileuri,9ull;๙

122๐更新caທmeraActivity以使用mediastore存储图像和关联元数据以下代码是上述示例的更新,它将在mediastore中保存图像,然后允许添加标题和描述。此外,该版本包含几个ui元素,我们将基于用户在该应用程序的操作进程对这些元素า的可见性进行管理。

↑返回顶部↑

书页/目录

Android多媒体开发高级编程