0

我的图像存储在文档根目录中,图像路径(字符串)保存在数据库中。数据库中的每个项目都与一个imagePath. 接下来是将这些图像传输到 Android Sd 卡。

困境:

1)我有一个将图像文件转换为base64的php脚本,然后与项目详细信息一起存储在一个Json对象中。转换后,base64字符串将再次转换(使用java)图像并保存到sd卡。此外,在这种方法中,我可以轻松地将图像路径存储在 sqlite 中,因为它直接与项目相关联。

$type = pathinfo($row["imagePath"], PATHINFO_EXTENSION);
JSONParser jParser = new JSONParser();

for (int i = 0; i < products.length(); i++) {
                        // individually get each arrays
                        JSONObject c = products.getJSONObject(i);

                        {// Save Main Groups Images in SD CARD

                            byte[] decodedString = Base64.decode(
                                    c.getString(TAG_IMAGE_NAME),
                                    Base64.DEFAULT);
                            Bitmap decodedByte = BitmapFactory
                                    .decodeByteArray(decodedString, 0,
                                            decodedString.length);
}

2)第二种方法是直接将图像路径(未转换)保存为json,然后java处理图像的下载,然后将其保存到sd卡以及图像路径的sqlite。

URL url = new URL(_url);
URLConnection connection = url.openConnection();
connection.connect();
InputStream input = new BufferedInputStream(url.openStream());

我想要第一种方法,因为有很多过程,它很酷,但我担心应用程序的性能我认为 app. 2更好。将文件保存到 sd 卡并确保 sd 卡中的图像路径存储在 sqlite 中的有效方法是什么?

4

0 回答 0