我如何从另一个功能模块访问活动

2024-04-26

我正在创建一个即时应用程序,其中包括应用程序模块、基本功能模块、即时应用程序模块和另一个功能模块。问题是我无法从基本功能和功能模块访问应用程序模块的活动,并且基本功能模块和功能模块之间也是如此,但我能够从应用程序模块访问基本功能模块的活动。

现在我正在使用以下方式访问活动:

Intent i = new Intent(this,
                    Class.forName("com.demo.test.appmodule.TextActivity"));

通过这种方法,工作室不会在编译时向我显示任何错误。

  1. 两个不同功能模块之间是否有其他方式进行通信?
  2. 为什么我能够从应用程序模块访问基本功能模块活动,但反之则不能?
  3. 我们可以从基础模块或任何其他功能模块访问应用程序模块的活动吗?

我可以有一个定义即时应用程序的项目结构的链接吗

提前致谢


功能之间无法直接通信的原因是它们彼此独立。

处理此问题的正确方法是使用其 URL 调用它,例如:android-instant-apps/hello-feature-module/HelloActivity.java https://github.com/googlesamples/android-instant-apps/blob/master/hello-feature-module/features/hello/src/main/java/com/instantappsamples/feature/hello/HelloActivity.java

Intent intent = new Intent(Intent.ACTION_VIEW,
Uri.parse("https://hello-feature.instantappsample.com/goodbye"));
intent.addCategory(Intent.CATEGORY_BROWSABLE);
startActivity(intent);

在即时应用程序结构中,基地充当图书馆对于功能模块,功能内置于APKs。在已安装的应用程序结构中,基础和功能都充当库对于应用程序模块。可以在这里找到一些解释:

  • 为什么使用新的 Android 功能插件而不是库插件? https://stackoverflow.com/questions/44361335/why-use-the-new-android-feature-plugin-over-the-library-plugin/44361564#44361564

  • Android:您可以向 Instant App 模块添加活动吗? https://stackoverflow.com/questions/47425735/android-can-you-add-activities-to-the-instant-app-module/47430978#47430978

曾经有一个页面@https://g.co/instantapps https://g.co/instantapps这解释了即时应用程序的结构,但看起来缺少它。不过,您可以看一下:

  • https://android-developers.googleblog.com/2017/08/android-instant-apps-best-practices-for.html https://android-developers.googleblog.com/2017/08/android-instant-apps-best-practices-for.html
  • 页面底部@Codelabs/android-multi-feature-instant-app/#3 https://codelabs.developers.google.com/codelabs/android-multi-feature-instant-app/#3

不,您将无法从某个功能直接访问应用程序的活动。作为安装的应用程序,com.android.feature模块被编译/行为为com.android.library模块,因此在这里应用相同的规则:应用程序依赖于库,而不是相反。要遍历该方向,您将需要使用如上所示的相同类型的 Intent。

任何东西在com.android.application将与即时应用程序的功能模块隔离,并且仅出现在已安装的应用程序中。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

我如何从另一个功能模块访问活动 的相关文章

  • 找不到参数的方法 dependencyResolutionManagement()

    我正在尝试使用老师给我的一个项目 但它显示了一个错误 Settings file Users admin AndroidStudioProjects HTTPNetworking settings gradle line 1 A probl
  • Sqlite数据库生命周期?关闭应用程序后它会被删除吗?

    我正在遵循一个简单的教程 该教程创建一个从 SQLiteOpenHelper 扩展的类 并创建一个包含一个表和 5 行的数据库 好的 但我需要更多地了解 android Sqlite 数据库 例如 如果应用程序关闭或手机关机会发生什么 数据
  • CardView 圆角获得意想不到的白色

    When using rounded corner in CardView shows a white border in rounded area which is mostly visible in dark environment F
  • 如何以编程方式检查 AndroidManifest.xml 中是否声明了服务?

    我正在编写一个库 该库提供了一项服务 其他开发人员可以通过将其包含在他们的项目中来使用该服务 因此 我无法控制 AndroidManifest xml 我在文档中解释了要做什么 但一个常见的问题是人们忽略了将适当的 标记添加到其清单中 或者
  • CollapsingToolBarLayout - 状态栏稀松布颜色不改变

    几天前我更新了我的 android studio 并开始使用 CoordinatorLayout 和 CollapsingToolbarLayout 只是尝试一些东西 工具栏稀松布颜色似乎覆盖了状态栏初始颜色和状态栏稀松布颜色 从 xml
  • 是否必须删除 Intent extra?

    这可能是一个愚蠢的问题 但是是否有一条规则规定消费活动必须显式删除 Intent 额外内容 或者只有在回收 Intent 对象时才如此 换句话说 如果我总是通过执行以下操作来链接到下一个活动 Intent i new Intent MyCu
  • 是否有 ADB 命令来检查媒体是否正在播放

    我想使用 ADB 命令检查根植于终端的外部设备中是否正在播放音频 视频 我无法找到任何 ADB 命令 如果有 我尝试过 adb shell dumpsys media player 我想要一个命令来指定视频是否正在运行 您可以使用以下命令查
  • Android MediaExtractor seek() 对 MP3 音频文件的准确性

    我在使用 Android 时无法在eek 上获得合理的准确度MediaExtractor 对于某些文件 例如this one http www archive org download emma solo librivox emma 01
  • 发布android后更改应用内购买项目的价格

    在 Google Play 上发布后 是否可以更改应用内购买商品的价格 我假设该应用程序也已发布 完整的在线文档位于http developer android com http developer android com也http sup
  • JavaMail 只获取新邮件

    我想知道是否有一种方法可以在javamail中只获取新消息 例如 在初始加载时 获取收件箱中的所有消息并存储它们 然后 每当应用程序再次加载时 仅获取新消息 而不是再次重新加载它们 javamail 可以做到这一点吗 它是如何工作的 一些背
  • 如何默认在 ActionOpenDocument 意图中显示“内部存储”选项

    我需要用户选择一个自定义文件类型的文件 并将其从 Windows 文件资源管理器拖到 Android 设备上 但默认情况下内部存储选项不可用 当我使用以下命令启动意图时 var libraryIntent new Intent Intent
  • 在两个活动之间传输数据[重复]

    这个问题在这里已经有答案了 我正在尝试在两个不同的活动之间发送和接收数据 我在这个网站上看到了一些其他问题 但没有任何问题涉及保留头等舱的状态 例如 如果我想从 A 类发送一个整数 X 到 B 类 然后对整数 X 进行一些操作 然后将其发送
  • 错误:在根项目“projectName”中找不到项目“app”

    我有一个在 Eclipse 中开发的旧应用程序 现在尝试将其迁移到 Android Studio 我更新了库并遵循了基本步骤 现在 我收到此错误 Error Project app not found in root project pro
  • Android 中麦克风的后台访问

    是否可以通过 Android 手机上的后台应用程序 服务 持续监控麦克风 我想做的一些想法 不断聆听背景中的声音信号 收到 有趣的 音频信号后 执行一些网络操作 如果前台应用程序需要的话 后台应用程序必须能够智能地放弃对麦克风的访问 除非可
  • Android:膨胀布局时出现 StackOverFlowError 和 InvokingTargetException

    首先 对不起我的英语 我在膨胀布局时有一个问题 我有一个自定义视图 从 LinearLayout 扩展而来 称为按钮帮助 我在名为的布局上使用该视图加载活动 我的以下代码在所有设备和模拟器上都能完美运行 但具有 QVGA 屏幕 例如 Sam
  • 如何确定对手机号码的呼叫是本地呼叫还是 STD 或 ISD

    我正在为 Android 开发某种应用程序 但不知道如何获取被叫号码是本地或 STD 的号码的数据 即手机号码检查器等应用程序从哪里获取数据 注意 我说的是手机号码 而不是固定电话 固定电话号码 你得到的数字是字符串类型 因此 您可以获取号
  • 一次显示两条Toast消息?

    我希望在一个位置显示一条 Toast 消息 并在另一位置同时显示另一条 Toast 消息 多个 Toast 消息似乎总是按顺序排队和显示 是否可以同时显示两条消息 是否有一种解决方法至少可以提供这种外观并且不涉及扰乱活动布局 Edit 看来
  • 将两个文本视图并排放置在布局中

    我有两个文本视图 需要在布局中并排放置 并且必须遵守两条规则 Textview2 始终需要完整显示 如果布局中没有足够的空间 则必须裁剪 Textview1 例子 文本视图1 文本视图2 Teeeeeeeeeeeeeeeeeextview1
  • 如何将 google+ 登录集成到我的 Android 应用程序中?

    大家好 实际上我需要通过我的应用程序从 google 登录人们 现在我阅读了 google 上的文档 其中指出 要允许用户登录 请将 Google Sign In 集成到您的应用中 初始化 GoogleApiClient 对象时 请求 PL
  • 节拍匹配算法

    我最近开始尝试创建一个移动应用程序 iOS Android 它将自动击败比赛 http en wikipedia org wiki Beatmatching http en wikipedia org wiki Beatmatching 两

随机推荐

  • 三.js Raycaster intersectObjects

    我正在尝试修改这个例子 https github com timoxley threejs blob master examples webgl morphtargets md2 control html来自 Three js 通过鼠标点击
  • 错误:没有匹配的函数可供调用

    我在代码中收到 没有匹配的函数来调用错误 该代码在另一个类的构造函数中创建一个类的实例 代码如下 inline DiscriminatorContainer DiscriminatorContainer ushort id FebPtr f
  • 可以在 swift 中创建静态分配的数组吗?

    我想在 swift 中创建一个结构体 它有少量固定数量的值 比如 16 个浮点数 作为实例数据 要求该结构体不将这些值存储在堆上 以便结构体实例的地址就是实例变量的地址 还要求这些值可以通过下标在结构内部访问 就像数组一样 在 C 语言中
  • 验证 Rails 中多个属性之一是否存在

    在多语言应用程序中 用户可以输入自己的中文和英文姓名 用户可以输入其中之一或两者 但必须至少输入一个名称 class Person lt ActiveRecord Base validates zh name presence gt tru
  • 使用 ManagementObjectSearcher 时检测到 DisconnectedContext

    我在 WndProc 覆盖中使用以下函数 Public Function GetPortName As String Dim portNameData As String Dim comPortNumber As String Try Di
  • 如何在dynamo db中定义“Map”AttributeType?

    我是新来的AWS Dynamodb I 已读过 https docs aws amazon com amazondynamodb latest APIReference API AttributeValue html我们可以设置Mdynam
  • Twisted可以用Java实现吗?

    我记得读到过以下特性导致了 Python 中有趣的框架 库的开发 我读过这篇文章http www python org workshops 2002 02 papers 09 index htm http www python org wo
  • 如何在 wix .wxs 文件中指定

    我想在 Wix 安装程序的 wix wxs 文件中将属性指定为受限属性
  • 如何在 std::shared_ptr 之间设置/获取 unsigned char *?

    我想设置unsigned char 数据到std shared ptr
  • 如何在 C# 中从 USB 令牌读取证书

    我有一个 USB 令牌 其中包含一个加密证书 该证书具有公钥和私钥 现在我想用 C 创建一个应用程序 通过它我可以找到可访问的证书信息 当我插入 USB 令牌时 它会被检测到 但计算机部分上没有显示任何驱动器 就像闪存驱动器一样 如何从 U
  • Tensorflow 何时更新权重和偏差?

    张量流什么时候更新for循环中的权重和偏差 下面是tf的github上的代码 mnist softmax py https github com tensorflow tensorflow blob master tensorflow ex
  • 如何通过 Azure Active Directory 对多租户 ASP.NET 应用程序进行身份验证?

    我一直在我的数据中心使用 Azure Active Directory 试用许可证进行一些测试 我们公司拥有自己的托管服务和物理硬件 目前我们希望保持这种状态 尽管我们将来可能会研究将其全部转移到云服务 目前 我们正在尝试为使用 Azure
  • 在 Android 中“注入所有内容”是一种不好的做法吗?

    在研究依赖注入时 我发现了一些建议的方法注入一切 http frogermcs github io inject everything viewholder and dagger 2 example 和其他人说没有必要这样做 https s
  • .clone() 和 .html() 有什么区别?

    Jquery 的 clone 和 html 函数有什么区别 Jquery 文档指出 clone 方法对匹配的集合执行深度复制 元素 这意味着它复制匹配的元素以及所有 它们的后代元素和文本节点 在 HTML 文档中 html 可用于获取任意内
  • self.__class__ 的快捷方式

    有时我发现自己正在接触班级成员 在一个项目中 我什至在类定义中包含了类定义 在这种情况下我经常发现mysql输入self class
  • 具有稀疏矩阵的 numpy 元素外积

    我想在 python 中对三个 或四个 大型二维数组进行逐元素外积 值是 float32 四舍五入到小数点后两位 它们都具有相同的行数 n 但具有不同的列数 i j k 所得数组的形状应为 n i j k 然后 我想对结果的每一列求和 最终
  • 阻止请求 URL selenium Firefox Python

    我试图在访问网站时阻止某些 URL 这意味着我只提出继续所需的请求 有一个 url 自动加载 5 MB 代码我无法阻止通过 Firefox 配置文件禁用 css 我读到硒不允许那么多的控制 但我不确定是否有某种方法可以使用插件来设置它 但是
  • 有没有办法像 Visual Studio 一样让 Xcode 5 自动完成?

    Xcode 5 现在取代了 Xcode 4 我对这两种 IDE 的一个常见抱怨是它们不能非常积极地自动完成 在 Visual Studio 中 只要您按下非标识符键 如括号 逗号 点 空格等 就会提交自动补全 在 Xcode 5 上 您必须
  • 我应该如何使用 Mojo::UserAgent 处理 HTML META 标记?

    我必须处理一些配置错误的 Web 服务器 因此我开始处理 HTML 元标记以将信息反馈到 Web 用户代理对象中 我尝试了多种方法来做到这一点莫乔利西斯 http mojolicio us并决定在响应中寻找 完成 事件 我的目标是让其余代码
  • 我如何从另一个功能模块访问活动

    我正在创建一个即时应用程序 其中包括应用程序模块 基本功能模块 即时应用程序模块和另一个功能模块 问题是我无法从基本功能和功能模块访问应用程序模块的活动 并且基本功能模块和功能模块之间也是如此 但我能够从应用程序模块访问基本功能模块的活动