隐式和显式意图之间的区别

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

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

  • Android以编程方式拨打电话号码
  • 有什么方法可以启动我的应用程序?
  • 通过意图传递ArrayList
  • 如何在完成时从最近的应用列表中删除活动?
  • 通过意图在Android中的特定位置打开谷歌地图
  • 如何在android中使用adb进行出厂重置?
  • 当我的活动依赖于通过Intent传递的额外内容时,如何编写android JUnit测试?
  • 未触发Android通知操作(PendingIntent)
    1. 显式意图:显式意图命名组件。

    2. 隐式意图:隐式意图没有指定一个组件。

    例如:应该被称为Implicit intent的java类要求系统执行一个服务,而不告诉系统哪个java类应该执行这个服务。

    隐式活动调用

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

    <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); 

    这是一个额外的参考