我想启动android UI,显示属于一个对话的所有sms线程(具有相同的thread_id)。我尝试了不同的方法,但没有成功:
1)
Intent i = new Intent(Intent.ACTION_VIEW);
i.setData(Uri.parse("content://sms/conversations/" + thread_id));
i.addCategory(Intent.CATEGORY_DEFAULT);
startActivity(i);
我收到错误:
java.lang.RuntimeException: Unable to start activity ComponentInfo{android.test.intenttest2/android.test.intenttest2.IntentTest2Activity}:
android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.VIEW cat=[android.intent.category.DEFAULT] dat=content://sms/conversations/3 }
2)
Intent i = new Intent(Intent.ACTION_VIEW,Uri.parse("content://sms/conversations/" + thread_id));
i.setType("vnd.android-dir/mms-sms");
i.addCategory(Intent.CATEGORY_DEFAULT);
startActivity(i);
这个推出了“创建短信”用户界面,这不是我想要的 请注意,我有thread_id,所以基本上我传递了thread_id并试图让它为属于该thread_id的线程列表启动UI。
感谢。
答案 0 :(得分:2)
好的,我刚刚解决了这个问题。以下代码用于使用thread_id打开短信对话。我是从android google groups
得到的int thread_id = 11; //the thread_id of the conversation
Intent i = new Intent(Intent.ACTION_VIEW,Uri.parse("content://mms-sms/conversations/" + thread_id));
startActivity(i);
答案 1 :(得分:0)
请试试这个:
Intent i = new Intent(Intent.ACTION_VIEW);
intent.setdata("content://sms/conversations/" + thread_id);
i.setType("vnd.android-dir/mms-sms");
i.addCategory(Intent.CATEGORY_DEFAULT);
startActivity(i);
谢谢,
Shefali