gpt4 book ai didi

android - 如何在Android中的另一个模块中调用一个Activity(属于一个模块)?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:10:56 24 4
gpt4 key购买 nike

场景如下:我的单个应用程序中有 2 个模块(在 Android Studio 中,文件 -> 新建 -> 新建模块)。

  1. 模块A
  2. 模块 B

模块 A(它不是图书馆项目。它的 gradle 以应用插件开始:'com.android.application')。

模块 B(也不是库模块)。

在模块 B 中,我需要调用属于模块 A 的 Activity (例如 MainActivity)。

模块 A list :

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.abc.emergencycontacts">
<uses-permission android:name="android.permission.READ_CONTACTS"></uses-permission>
<uses-permission android:name="android.permission.WRITE_CONTACTS"></uses-permission>
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true">
<activity android:name=".EmergencyContactsActivity" android:theme="@style/AppTheme">
<intent-filter>
<action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>

</application>

</manifest>

模块 B list :

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.abc.secondaryactivity">

<application
android:allowBackup="true"
android:label="@string/app_name"
android:supportsRtl="true">

<activity android:name=".BaseAppActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>

</manifest>

如何实现?

请注意,我不能在模块 B 中添加模块 A 的依赖项,因为模块 A 不是库模块。

等待您宝贵的回应。

最佳答案

要从任何应用程序启动任何 Activity,您可以这样做:

Intent intent = new Intent();
intent.setClassName("packageName", "className");
startActivity(intent);

您不需要在编译期间能够引用该 Activity 的源代码。

这将解决您提出的问题。

关于android - 如何在Android中的另一个模块中调用一个Activity(属于一个模块)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40911174/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com