以下代码打开sms应用程序但我想打开系统安装的聊天应用程序列表,如viber,whatsapp等。
请帮助纠正此代码。
List<Integer> lst;
//init
//assuming it's not empty
int min = lst.get(0);
min = lst.stream().reduce(min, (x, y) -> x.compareTo(y) <= 0 ? x : y);
System.out.println(min);
答案 0 :(得分:0)
创建意图选择如下。
Intent intent = new Intent(Intent.ACTION_SEND);
...
// Create intent to show chooser
Intent chooser = Intent.createChooser(intent, "title");
// Verify the intent will resolve to at least one activity
if (intent.resolveActivity(getPackageManager()) != null) {
startActivity(chooser);
}
有关详细信息http://developer.android.com/training/basics/intents/sending.html
答案 1 :(得分:0)
对于任何应用程序,您可以使用其特定的包名称打开, 对于前 您需要使用其软件包名称(例如:com.skype.android)了解Skype,然后您可以启动它:
PackageManager packageManager = getPackageManager();
startActivity(packageManager.getLaunchIntentForPackage("com.skype.android"));
所有其他应用程序都是一样的。