本周早些时候我问了一个类似的问题,但我仍然不了解如何获取所有已安装应用程序的列表,然后选择一个运行.
我试过了:
Intent intent = new Intent(ACTION_MAIN);
intent.addCategory(CATEGORY_LAUNCHER);
Run Code Online (Sandbox Code Playgroud)
这只显示预先安装的应用程序或可以运行ACTION_MAIN Intent类型的应用程序.
我也知道我可以使用PackageManager来获取所有已安装的应用程序,但是如何使用它来运行特定的应用程序呢?
我已经设置了两个按钮.一个打开compose短信意图,另一个打开撰写电子邮件意图.短信意图工作正常但电子邮件按钮没有响应.我已经创建了一个categorychooser但是没有显示....直到我点击短信按钮
这是我的代码
case R.id.button2:
{
String phoneNumber = "xxxxxxxxxx";``
Intent smsIntent = new Intent(Intent.ACTION_SENDTO);
smsIntent.addCategory(Intent.CATEGORY_DEFAULT);
smsIntent.setType("vnd.android -dir/mms-sms");
smsIntent.setData(Uri.parse("sms:"+phoneNumber));
startActivity(smsIntent);
}
case R.id.button3:
{
Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND);
emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL, new String[]{"xxxxxxxx@gmail.com"});
emailIntent.setType("plain/text");
startActivity(Intent.createChooser(emailIntent, "Send email..."));
}
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?