18

我对隐式显式意图之间的区别感到困惑。隐式和显式意图的目的是什么,为什么要使用这些概念?

我是 Android 应用程序的新手,所以请提供一些示例。

4

2 回答 2

45

隐式活动调用

使用意图过滤器,您可以为您的活动创建操作,以便其他应用程序可以通过操作调用您的活动:

<activity android:name=".BrowserActivitiy" android:label="@string/app_name">
  <intent-filter>
     <action android:name="android.intent.action.VIEW" />
     <category android:name="android.intent.category.DEFAULT" />
     <data android:scheme="http"/> 
  </intent-filter>
</activity>

.

Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.example.com"));
startActivity(intent);

显式活动调用

您进行调用以准确指示要使用的活动类:

Intent intent = new Intent(this, ActivityABC.class);
startActivity(intent);

这是一个额外的参考

于 2012-12-11T04:26:17.760 回答
29
  1. 显式意图:显式意图命名组件。

  2. 隐式意图:隐式意图未指定组件。

例如:应该称为隐式意图的java 类要求系统执行服务,而没有告诉系统应该由哪个java 类执行该服务。

于 2012-12-11T04:35:41.540 回答