我对隐含和显式意图之间的区别感到困惑。隐式和显式意图的目的是什么,为什么使用这些概念?
我是Android应用程序的新手,所以请提供一些示例。
答案 0 :(得分:46)
使用意图过滤器,您可以为活动创建操作,以便其他应用可以通过操作调用您的活动:
<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);
答案 1 :(得分:29)
显式意图:显式意图命名组件。
隐含意图:隐含意图未指定组件。
E.g:应该被调用的java类隐式意图要求系统执行服务而不告诉系统哪个java类应该执行此服务。