【发布时间】:2012-01-18 17:58:16
【问题描述】:
我还没有找到一个实际示例,专门用于将您刚刚使用相机应用程序拍摄的图像的文件路径保存到应用程序中的 SQLite 数据库。
我看到了从 HTML 源中保存图像的代码...不好!我的问题是我有 URI,但老实说,我无法通过可用数据(开发指南、堆栈溢出问题)弄清楚如何将该文件路径插入我的数据库列。
这是我的代码,我尝试设置一个编辑文本字段,以便将路径保存到数据库中。我在模拟器中试过这个:
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == TAKE_PHOTO_CODE && resultCode == RESULT_OK) {
Bitmap x = (Bitmap) data.getExtras().get("data");
File storagePath = new File(Environment.getExternalStorageDirectory() +
"/DCIM/GPAA/");
storagePath.mkdirs();
File myImage = new File(storagePath,
System.currentTimeMillis() + ".jpg");
try {
FileOutputStream out = new FileOutputStream(myImage);
x.compress(Bitmap.CompressFormat.JPEG, 80, out);
Uri outputFileUri = Uri.fromFile(myImage);
mnotesText = (EditText)findViewById(R.id.notes);
mnotesText.setText (outputFileUri.toString());
((ImageView)findViewById(R.id.photoResultView)).setImageBitmap(x);
out.close();
Toast.makeText(Review.this,
"Image saved: " + outputFileUri.toString(),
Toast.LENGTH_LONG).show();
} catch (FileNotFoundException e) {
} catch (IOException e){
}
}
}
toast 使用此代码验证字符串是否可用且正确。但是,mnotesText.setText (outputFileUri.toString()); 的条目在模拟器中有效。但奇怪的是不能在手机上工作。
【问题讨论】:
-
如果您的问题得到解决,您应该将解决方案作为答案发布(是的,回答您自己的问题是完全可以接受的)。如果您想等待更好的答案,请不要接受。 (您会注意到这里已经解决了数千个问题,但其中很少有标题中包含“已解决”的问题。)
标签: java android image sqlite path