从我自己的应用程序开始短信活动@ ConversarionList.class
我已经完成了我的研究,并发现有很多人从意图启动短信应用程序,事情是人们通常倾向于只为传出消息执行此操作。从我自己的应用程序开始短信活动@ ConversarionList.class
我目前在我的应用程序中显示未读的短信计数,但它接缝我无法获得正确的工作意图。
在每一个尝试,我得到相同的结果,它启动应用程序,但一个新的短信......
我目前的意图看起来像这样
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse("sms:"));
startActivity(intent);
,它的结果是:
Android sms Aplication form http://img291.imageshack.us/img291/1330/22012196.png
- 编辑:帕拉 - >要
- Escribir mensaje - >写信息
- 投递 - >发送
我希望我对此很清楚。
的问题是:
如何我可以通过一个Intent到Android手机上的短信应用程序的收件箱?
编辑:我只是想复制这样的:
startActivity(new Intent(this, ConversationList.class));
至极我从:http://www.google.com/codesearch/p?hl=en#dpDz7Q08o9c/src/com/android/mms/ui/ComposeMessageActivity.java @LINE:2028
在自己的应用程序。但我似乎无法让它工作。
什么是SetClassName?
为了启动位于当前应用程序之外的类,我们需要声明一些类似于“完整路径”的东西...
为了打开,我们需要做这个默认的SMS应用@ConversationList:
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_LAUNCHER);
intent.setClassName("com.android.mms", "com.android.mms.ui.ConversationList");
来源:
首先,看看不同的意图和lanch选项。你可以看到我对similar question的回答。您的代码将使用StartActivityForResult()调用某些内容。那是一个更难的问题。
如果你很幸运,你可以从消息传递应用程序中找到一个INTENT状态。您可能不会,因为没有保证手机会使用系统默认值。毕竟,当接收到短信时,它将被放入一些消息数据库中,并且只有根据消息应用程序逻辑才是'新'。出于安全原因,该数据库不共享。您可能要对此评论feature request。
你可以编写自己的应用程序,抓住'新SMS'的意图,然后发送它,也许。请参阅somewhat old tutorial。
祝你好运!让我们知道你是否有进步。
意向smsIntent =新意图(Intent.ACTION_VIEW);
smsIntent.setType(“vnd.android-dir/mms-sms”);
smsIntent.putExtra(“address”,“12125551212”);
smsIntent.putExtra(“sms_body”,“Body of Message”);
startActivity(smsIntent);
我相信我们在这里谈论两件不同的事情。 我只是想复制这个: startActivity(new Intent(this,ConversationList.class)); 我从:http://www.google.com/codesearch/p?hl=zh-CN#dp7z08o9c/src/com/android/mms/ui/ComposeMessageActivity.java @LINE:2028 我自己的应用程序。但我似乎无法让它工作。 谢谢先进。 – 2010-06-04 14:21:41
对不起,我不明白你的问题。 – 2010-06-04 22:13:44
我做了一个应用程序,显示用户未读短信的数量。我的想法是将该计数器“链接”到默认的短消息应用程序。 问题是:我无法获得默认的短信应用程序以开始在ConversationList活动。 PS:ConversationList活动是默认短信应用程序的主屏幕。 – 2010-06-05 23:12:25