什么是启动UI的Intent,显示属于对话的所有sms线程?

时间:2012-01-23 08:36:02

标签: android android-intent

我想启动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。

感谢。

2 个答案:

答案 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