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

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(使用前将#替换为@)

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

  • Android第一次动画不流畅

    我正在尝试一个动画将 imageView 从屏幕底部滑动到屏幕中心 但是当我第一次执行此动画时 它不平滑 但当第二次执行动画时 它是正常且平滑的 我几乎尝试了所有方法 但无法解决我的问题 这是我的动画文件
  • 导航组件重复 NavArgs 的问题

    我有一个片段 class SomeFragment private val args by navArgs
  • 如何更新 Firebase 中的节点密钥?

    如何重命名14 04 2017 node 没有用于重命名节点的 API 您必须获取节点的值 使用新名称将其保存到数据库并删除旧节点
  • 如何将安卓手机从睡眠状态唤醒?

    如何以编程方式将 Android 手机从睡眠状态唤醒 挂起至内存 我不想获取任何唤醒锁 这意味着手机在禁用 CPU 的情况下进入 真正的 睡眠状态 我想我可以使用某种RTC 实时时钟 机制 有人有例子吗 Thanks 为了让Activity
  • Phonegap - 如何将.txt文件保存在Android手机的根目录中

    我正在尝试使用phonegap 将 txt 文件保存在Android 手机的根目录中 我已经安装了这些插件 cordova plugin file 和 cordova plugin file transfer 在 config xml 文件
  • 菜单未显示在应用程序中

    由于某种原因 我的操作菜单在我的 Android Studio 应用程序中消失了 我正在按照教程学习如何创建 Android 应用程序 但最终遇到了这个问题 我正在使用 atm 的教程 http www raywenderlich com
  • (Ionic 2)尝试回退到 Cordova-lib 执行时发生错误:TypeError:无法读取未定义的属性“then”

    Edit 使用 ionic 2 时会发生这种情况 我知道它还不稳定 但我认为可能有一些解决方案 因为其他人似乎没有遇到这个问题 Edit end 由于某种原因 我在尝试使用 ionic build android 和 ionic build
  • Android 原理图内容提供程序库配置?

    Jake Wharton 在最近的一次演讲中提到了这个库 它看起来是避免大量样板文件的好方法 所以我尝试了一下 但没有任何成功 https github com SimonVT schematic https github com Simo
  • TextView 之间有分隔线

    我正在尝试在 android studio 中创建以下布局 因为我对 android 东西还很陌生 所以我第一次尝试使用 LinearLayout 并认为这可能无法实现 现在我正在尝试使用RelativeLayout 我已经用颜色创建了这个
  • 在我的Android中,当其他应用程序想要录制音频时如何停止录音?

    在我的应用程序中 服务通过 AudioRecord 持续录制音频 当我的应用程序运行时 其他与音频记录相关的应用程序 例如 Google 搜索 无法工作 如何知道何时有其他应用想要录制音频 以便我可以停止录制以释放资源 答案是MediaRe
  • OnClick 事件中的 finish() 如何工作?

    我有一个Activity一键退出Activity 通过layout xml我必须设置OnClick事件至cmd exit调用 this finish 效果很好 public void cmd exit View editLayout thi
  • 从 Firebase 数据库填充微调器

    public class MainActivity extends AppCompatActivity DatabaseReference reference Spinner areaSpinner ArrayList
  • Android 版 Robotium - solo.searchText () 不起作用

    我在使用 Robotium 时遇到 searchText 函数问题 我正在寻找这个字符串
  • 在 Jetpack Compose 中启动动画矢量 Drawable

    我有一个动画矢量可绘制R drawable my anim 我想在 Jetpack Compose 中展示并开始 可绘制对象显示 渲染正确 但动画未启动 这是撰写视图 Composable fun SplashView Surface mo
  • 材质设计图标颜色

    应该是哪种颜色 暗 材质图标 在官方文档上 https www google com design spec style icons html icons system icons https www google com design s
  • 调节麦克风录音音量

    我们正在尝试调整录音时的音量级别 麦克风似乎非常敏感 会接收到很多静电 我们查看了 setVolumeControlStream 但找不到传入其中来控制麦克风的流 将您的音频源设置为 MIC using MediaRecorder Audi
  • Android中webview的截图方法

    我在 webview 中的 html5 canvas 上画了一些线 并尝试使用下面的代码截取 webview 的屏幕截图 WebView webView WebView findViewById R id webview webView s
  • SharedFlow 和 StateFlow 的主要区别

    两者有什么区别共享流 and 状态流 以及如何使用这些MVI建筑学 使用简单更好吗Flow或者这些作为状态和事件 Flow 是冷的 意味着它仅在收集数据时才发出数据 另外Flow不能保存数据 可以把它看成是水在里面流动的管道 Flow中的数
  • 用于推送通知的设备令牌

    我正在实施推送通知服务 我需要创建一个数据库来存储 4 个移动平台的所有设备令牌 我想根据他们的平台 iOS Android BlackBerry WP7 来组织它们 但是有什么方法可以区分平台 这样如果我只想向 Android 用户发送消
  • 在 Google 地图上绘制线条/路径

    我很长一段时间都在忙于寻找如何在 HelloMapView 中的地图上的两个 GPS 点之间画一条线 但没有运气 谁能告诉我该怎么做 假设我使用扩展 MapView 的 HelloMapView 我需要使用叠加层吗 如果是这样 我是否必须重

随机推荐

  • 三.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并决定在响应中寻找 完成 事件 我的目标是让其余代码
  • 我如何从另一个功能模块访问活动

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