如何将库模块中 activity 的意图发送到主应用程序的 activity

How to send an Intent From an activity in Library Module to the Main Applications's activity

我正在尝试将意图从库模块中的 activity 发送到主应用程序中的 activity。但无法发送,因为库模块不能依赖于主应用程序,导致循环依赖。 有什么办法吗?

您不需要在库中引用 MainActivity class 名称。只需在您的主应用程序清单中将 intent-filter 添加到 MainActivity

<activity
android:name=".MainActivity">
    <intent-filter>
         <action android:name="com.example.main.mainactivity" />
         <category android:name="android.intent.category.DEFAULT" />
    </intent-filter>
</activity>

在您的图书馆中只需调用它即可打开 MainActivity:

Intent intent = new Intent("com.example.main.mainactivity");
startActivity(intent);

注意: 为 activity 定义 intent-filter 隐含地将 android:exported 设置为 true。这意味着其他应用程序可以使用相同的意图来启动您的 activity。如果这是一个问题,请使用 permissions 来限制您的 activity.