我正在尝试使用意图发送彩信。
这是我的代码:
private void sendMmsUsingIntent() throws Exception
{
Intent sendIntent = new Intent(Intent.ACTION_SEND);
sendIntent.setClassName("com.android.mms", "com.android.mms.ui.ComposeMessageActivity");
sendIntent.putExtra("address", "1213123123");
sendIntent.putExtra("sms_body", "some text");
sendIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse("file:///sdcard/DCIM/Camera/logo.png"));
sendIntent.setType("image/png");
//startActivity(sendIntent);
startActivity(Intent.createChooser(sendIntent,"MMS"));
}
我上面的代码我已经硬编码了一个文件名(logo.png ),我想删除这个依赖可以任何人请高手帮我怎么做?
我想在sdcard卡中的某个位置更改它,无论媒体文件是否可用,我都可以随机选择一个。
我跟随下面一个但是无法取得成功
'How to display files on the SD card in a ListView?'
谢谢
答案 0 :(得分:1)
我不确定你到底需要什么,但这里有几个选择。
1)如果您需要外部目录文件夹,请使用环境的 getExternalStorageDirectory()方法。
2)如果您需要默认的ImageDirectory,请使用环境的 getExternalStoragePublicDirectory()方法并将DIRECTORY_DCIM作为参数传递
检查http://developer.android.com/reference/android/os/Environment.html
修改强>
一旦你有了外部目录的路径,就这样做:
File f=Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES);
File[] allFiles= f.listFiles(); //All files and folder
for (int i = 0; i < allFiles.length; i++) {
if (allFiles[i].isFile()) {
//Do what you want
}
}