Mim*_*mmo 2 android actionview
这是代码
protected static final String DIR_IMAGE = "/data/data/it.android.myprogram/images/";
Intent intent = new Intent();
intent.setAction(android.content.Intent.ACTION_VIEW);
Uri u = Uri.fromFile(destinationFile);
intent.setDataAndType(u, "image/*");
startActivity(intent);
Run Code Online (Sandbox Code Playgroud)
如果我这样做,要打开的文件是/data/data/it.android.myprogram/images:
File dir = new File(DIR_IMAGE);
String[] files = dir.list();
Run Code Online (Sandbox Code Playgroud)
var文件包含所有文件,但是当我开始时
intent.setDataAndType(u, "image/*");
startActivity(intent);
Run Code Online (Sandbox Code Playgroud)
它显示了无法找到的信息/data/data/it.android.myprogram/images/img1.jpg
为什么?
小智 6
文件/data/data/it.android.myprogram只能由您的应用程序访问.如果要通过Intent将它们发送给其他应用程序,则必须使用openFileOutput活动的方法复制内容.
protected static final String DIR_IMAGE = "/data/data/it.android.myprogram/images/";
String filePath = DIR_IMAGE + "fileName";
FileInputStream fileInputStream = new FileInputStream(new File(filePath));
FileOutputStream fileOutputStream = openFileOutput("fileName", Activity.MODE_WORLD_READABLE);
ByteStreams.copy(fileInputStream, fileOutputStream);
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(Uri.parse("content://it.android.myprogram/fileName"), "image/*");
Run Code Online (Sandbox Code Playgroud)
希望能帮助到你
| 归档时间: |
|
| 查看次数: |
7839 次 |
| 最近记录: |