gpt4 book ai didi

android - 仅包含在特定构建变体中的 Activity

转载 作者:搜寻专家 更新时间:2023-11-01 09:40:42 27 4
gpt4 key购买 nike

假设我有以下构建变体:debugqarelease。是否有可能在 debugqa 的源集中有一个 Activity,但不包含在 release 中?

最佳答案

我想出了如何做到这一点。首先,将 YourActivity.java 从 src/main/ 移动到 src/debug/src/qa/。请务必保持 Activity 在 src/main/ 中的相同目录结构。

您还将从 src/main/AndroidManifest.xml 中删除 Activity 标签。然后使用 Android Studio 的 list 合并通过在新文件 src/debug/AndroidManifest.xmlsrc/qa/AndroidManifest.xml< 中使用以下代码将 Activity 标签添加到原始 list 中:

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

<application
android:name="MyApplication">
<activity android:name=".fq_domain.YourActivity"/>
</application>

</manifest>

最后,像这样混淆对该 Activity 的所有调用:

try {
Intent intent = new Intent(this, Class.forName("com.example.example.fq_domain.YourActivity"));
startActivity(intent);
} catch (ClassNotFoundException e) {
e.printStackTrace();
}

这是在 release 构建的情况下,它不应该崩溃,因为它没有在 list 中定义 Activity。

关于android - 仅包含在特定构建变体中的 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40049119/

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