我想使用explit意图在软电话应用上启动特定号码。 隐式应用程序看起来像:
Intent callIntent = new Intent(Intent.ACTION_CALL);
callIntent.setData(Uri.parse(phone));
startActivity(callIntent);
显式app的推出看起来像:
Intent LaunchIntent = getPackageManager().getLaunchIntentForPackage("example.app");
startActivity(LaunchIntent);
问题:是否可以使用显式意图传递Uri并使用ACTION_CALL启动应用程序?
答案 0 :(得分:3)
是。使用您的示例,您可以执行以下操作:
Intent intent = getPackageManager().getLaunchIntentForPackage("example.app");
intent.setAction(Intent.ACTION_CALL);
intent.setData(Uri.parse(phone));
startActivity(LaunchIntent);
当您使用明确的Intent
时,Android不会使用Intent
中的ACTION或DATA字段来确定启动哪个Activity
。您已在Intent
中明确设置了该值。但您仍然可以在Intent
中设置ACTION和DATA字段,以便将信息传递给您正在开始的Activity
。