我可以将 NativeActivity 与 ActivityGroup 一起使用吗?

2024-02-13

I know ActivityGroup已弃用。

但我正在尝试结合用户界面NativeActivty带有一些 Java/Android APIViews.

我正在尝试制作一个混合用户界面,其中屏幕的一部分来自NativeActivity.

我用这个例子 https://stackoverflow.com/a/3265352/703851并尝试过ActivityGroup一些简单的活动。

这与任何完美配合Activity(即使我使用 VideoView 播放视频)。

但是当我尝试加载时NativeActivity它不工作。 (我试过茶壶演示 https://android.googlesource.com/platform/development/+/1b8ffe3331233ba4902d94670cd257e7df9ee09d/ndk/platforms/android-17/samples/Teapot来自 NDK 样本)。

我所说的“不工作”是指window.getDecorView()从本机活动中,它始终返回透明视图,而不是实际内容视图。

我该怎么做呢?请帮我。


这次我找到了解决方法,并且效果很好。但仅适用于 ndk 演示。

在您的 ActivityGroup 子类的 onCreate 方法中,编写以下代码。

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    LocalActivityManager lam = getLocalActivityManager();

    Intent intent = new Intent();
    intent.setClass(this, TeapotNativeActivity.class);

    Window window = lam.startActivity("xxx", intent);

    // reflect call "willYouTakeTheSurface"
    NativeActivity callback = JavaCalls.callMethod(window.getDecorView(), "willYouTakeTheSurface");
    if (callback != null) {
        window.takeSurface(null);
        getWindow().takeSurface(callback);
        getWindow().takeInputQueue(callback);
    }


    setContentView(window.getDecorView());

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

我可以将 NativeActivity 与 ActivityGroup 一起使用吗? 的相关文章

  • 通过数据绑定将字符串传递到包含的布局不起作用

    我正在尝试使用 Android 数据绑定功能将一个简单的字符串从我的主布局传递到布局 它编译得很好 但传递给包含的值实际上并未传递 即 它没有出现在我的布局中
  • 如何检测和管理来电(Android)?

    我想创建一个应用程序 可以检测来电并在一定数量的蜂鸣声 响铃 后启动我的自定义活动 我的意思是在 2 或 3 或 5 声蜂鸣声 响铃 后我的activity被触发 我该怎么做 Thanks 我认为您无法计算自来电开始以来电话响了多少次 无法
  • 使用 APDU 命令的有效 NFC 读取比特率是多少?

    我目前正在使用 Android IsoDep trancieve 函数发送和接收累计 1628 字节的数据 该函数分布在 35 个 APDU 命令 选择应用程序 身份验证 读取 中 字节计数包括返回的 MAC 校验和以及由 transcie
  • 我可以在 firebase android 中加载另一个用户个人资料图像吗?

    如果我有其他用户的电子邮件但我以其他用户身份登录 我是否可以加载其他用户的个人资料图像 如果您使用 Firebase Storage 那么从技术上讲是的 它只是一个您可以从中检索任何文件的文件系统 如果不伪造您的应用程序 获取 api 密钥
  • 为什么我将可绘制文件重命名为 .9.png 后出现“Some file crunching failed”?

    我正在测试 9 patch 图像 在一切正常之前 我重命名drawable file ic button beat box default png to ic button beat box default 9 png 然后我收到错误 某些
  • AppCompat v21 工具栏更改徽标大小

    我正在从以前的操作栏迁移到 appcompat v21 中的新工具栏功能 我仍然想将徽标保留在操作栏 工具栏 的左上角 为此 我在布局中添加了支持工具栏 并为其创建了一个新的工具栏 app theme style NewToolBarSty
  • SQLite (Android):使用 ORDER BY 更新查询

    Android SQLite 我想要在 myTable 中的其他行之间插入行在android中使用SQLite 为此 我尝试增加从第 3 行开始的所有行的 id 这样 我就可以在位置 3 处插入新行 myTable 的主键是列 id 表中没
  • 访问角落里的存储

    我能找到的与文件存储有关的最接近文档的是这个帖子 http nookdeveloper zendesk com entries 20257971 updated what are the size constraints on my app
  • Android-工具栏中的SearchView

    我只想在我的应用程序中添加 searchview 但我不想搜索任何东西 只是我想要用户输入的查询 到目前为止 我尝试了这段代码 但是当我运行我的应用程序时它崩溃了 Update 我尝试了这个 但即使我的应用程序崩溃了 main menu x
  • SQLite支持android的数据类型有哪些

    谁能告诉我 SQLITE 中支持 ANDROID 的数据类型列表 我想确认 TIME 和 DATE 数据类型 这里有一个list http www sqlite org datatype3 htmlSQLite 的数据类型 支持时间和日期间
  • 如何在 iOS 应用程序中通过其他应用程序共享内容/数据,就像我们在 Android 应用程序中使用 Intent.ACTION_SEND 所做的那样?

    在Android中 我们可以通过Intent ACTION SEND startactivity api轻松共享内容 文本 图像 视频等 我已经有一个应用程序可以完美地做到这一点 并且有一个并行的 iOS 应用程序 我希望它能够实现相同的功
  • 没有调用addToBackStack,片段仍然添加到backstack,为什么?

    我正在制作我的片段更换器助手类 但我遇到了一些问题 我称之为FragmentChanger 它有一个fragmentContainer 这是一个ViewGroup 其中包含我想展示的所有片段 我已经做了我自己的replace Fragmen
  • Android模拟器分配内存失败8

    当我尝试从 Eclipse 运行 WXGA800 模拟器时 出现如下错误 Failed to allocate memory 8 This application has requested the Runtime to terminate
  • 在 AppAuth-Android 中注销

    我有一个用JAVA开发的Android应用程序 对于这个应用程序 我使用的是身份服务器4 https github com IdentityServer IdentityServer4作为我的 STS 一切正常 但我找不到任何注销的实现Ap
  • 从手机访问本地主机[关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 我正在使用
  • 删除Android所有语言中的字符串

    我有一个包含多个翻译的应用程序 我想删除一些字符串 我怎样才能重构并删除它们一次 例如在默认情况下strings xml文件并自动将删除传播到其他翻译的其他 strings xml 文件 您可以通过 Android Studio 中的 翻译
  • 检测 ListView(或 ScrollView)内的滚动位置

    我正在构建一个聊天室应用程序 其中每 X 秒就会轮询一次新事件 每次发生这种情况时 此代码都会使用新数据更新 RoomAdapter ArrayAdapter 的自定义子类 并将其滚动到底部 RoomAdapter adapter Room
  • “无法实例化活动”错误

    我的一个 Android 应用程序拥有大约 100 000 个用户 每周大约 10 次 我会通过 Google 的市场工具向我报告以下异常情况 java lang RuntimeException Unable to instantiate
  • 具有矢量可绘制的 ImageView 的 Resources$NotFoundException

    我遇到了崩溃 Resources NotFoundException用于在活动创建时绘制的矢量 21 日前崩溃 安卓工作室2 1 支持库24 0 0 Gradle插件2 1 0 目标SDK 23 最小SDK 15 buildTools版本
  • 如何以编程方式创建活动转换?

    我想以编程方式创建一个动画 以从触摸屏点启动具有缩放效果的活动 接下来我模拟缩放输入效果

随机推荐

  • 如何在 Chrome 扩展程序中捕获单个 HTML 元素的屏幕截图?

    我知道有一个捕获可见选项卡 http developer chrome com extensions tabs html method captureVisibleTab 但是如何剪切选项卡的屏幕截图 以便只留下一个 HTML 元素 为此你
  • php 在移动到另一个文件夹之前操作 tmp 文件夹中上传的图像/文件

    我一直在以通常的方式上传后处理图像文件 例如将文件从 tmp 文件夹移动到网站的首选文件夹 现在我想通过将图像保存在临时文件夹中来操作图像 一旦我完成了它 我想将其移动到首选文件夹 我想做的是 显示一个非常简单的自定义文件上传对话框 选择图
  • MongoDB查询获取CPU使用率

    使用mongodb 我知道可以使用命令 db serverStatus 它将返回有关当前 mongo 实例的大量信息 包括内存信息 mem bits 64 resident 4303 virtual 7390 是否有任何类似的内容 或者此输
  • 为什么向 HashMap 插入 50,000 个对象时会出现 OutOfMemoryError 错误?

    我正在尝试将大约 50 000 个对象 因此 50 000 个键 插入到java util HashMap
  • 平滑阻尼或补间算法

    我想知道一种平滑潮湿的算法 或者像有些人所说的 补间 我希望最好在 Lua 中使用 但任何东西都会有所帮助 我曾尝试观看统一教程 但如果没有算法来替代平滑阻尼函数 则无法传输代码 如果我正确理解这个问题 那么您正在寻找一个缓动函数 GitH
  • 自加载时间起 10 秒后运行 PHP 脚本

    我正在建立一个网站 但我不明白一件事 我需要一个脚本来检查自加载时间以来是否已经过去 10 秒 然后它将运行另一个 PHP 脚本 但我不确定这是否可能 我已附上我对这个问题的尝试 有任何想法吗 提前致谢 if query SELECT FR
  • xCode 4 中的异常没有调用堆栈

    我遇到了一个例外 我无法回溯 我想知道哪里抛出了异常 xCode 4 2 中有这样的选项吗 正如您所看到的 调用堆栈并没有多大帮助 我唯一知道的是我正在尝试访问 NSArray 中错误索引处的项目 欢迎所有想法 谢谢 设置断点objc ex
  • 除非我使用超时,否则 CSS 过渡不起作用

    我有几节课 hide is display none and transparent is opacity 0 元素pr container has webkit transition opacity 1s 以下基于 JQuery 的代码使
  • 如何使用 http/ftp 将文件上传到 iphone/ipad? (例如 ifile、goodreader)

    关于将文件上传到设备有什么好的建议吗 我见过很多应用程序在 80 或 8080 上创建 http 服务器来上传文件 这是否意味着我也必须实现服务器 有第三方库吗 最好是开源且非 GPL 编辑 我将在企业环境中为特定设备升级应用程序中的文件
  • 如何使用 glDebugMessageControl

    这是基于来自的调试回调示例https www khronos org opengl wiki Debug Output https www khronos org opengl wiki Debug Output并在某种程度上https l
  • 以 Django 作为后端的 Android/iOS 应用程序

    我有一个用 Django 构建的网站项目 想为其构建一个移动应用程序 我做了很多研究 但很困惑native and hybrid应用程序 我的项目基本上是 Quora 的克隆 只是一个大学项目 我也看到了PhoneGap Ionic and
  • UIAlertAction 值列表

    我试图弄清楚如何更改 UIAlertAction 标题的字体类型 我假设 可以通过为特定键设置值来完成 例如 要设置图像 您可以这样做 action setValue image forKey image 是否有所有可用密钥的列表 我不知道
  • 有没有比 () => 更好的方式来表达无参数 lambda?

    The 看起来很傻 有没有更好的办法 例如 ExternalId IfNotNullDo gt ExternalId ExternalId Trim 有点 城里有一个新的习语 它很好 在某些情况下可能对你有帮助 这并不完全是你想要的 但有时
  • 模拟器 Nexus 7 使用布局文件夹而不是layout-sw600dp

    我正在尝试处理不同屏幕的布局 但我发现这很困难 因为模拟器总是使用默认布局 我不明白为什么 我创建了一个 Nexus 7 模拟器 并希望使用layout sw600dp 与 Nexus 10 模拟器相同 怎么来的 提前致谢 R Nexus
  • 如何从PostgreSQL数据库获取角色的评论

    给定角色名称someone 如何获取用子句定义的注释 COMMENT ON ROLE someone IS THIS IS A ROLE COMMENT 查找如何检索此类信息的一个好方法是查看帮助psql并找到将显示此信息的命令 在这种情况
  • 有没有办法在 SymPy 中处理常量函数参数?

    我正在生成符号函数并使用 SymPy 来简化它们 现在我想要一种方法来 简化 表示尚未拟合的函数中的常量参数的符号 例如 如果我生成一个多项式 我可能会生成一个像这样的字符串 C x x C x C x C SymPy 会变成 C x 2
  • Laravel 5.5 如何在关系中添加动态条件?

    我有一个关系 可以让在特定日期创建的朋友使用静态日期参数 public function friends return this gt hasMany Friend class gt where created at 2018 01 31
  • printf 中的可变大小填充

    有没有办法在中使用可变大小的填充printf 我有一个整数表示填充有多大 void foo int paddingSize printf MyText paddingSize 这应该打印出来 MyText其中 paddingSize 应决定
  • 使用日期时间索引提高大熊猫 read_csv 的速度

    我有巨大的文件 如下所示 05 31 2012 15 30 00 029 130 6 25 1 E 0 1306 25 05 31 2012 15 30 00 029 130 6 25 8 E 0 1306 25 我可以使用以下内容轻松阅读
  • 我可以将 NativeActivity 与 ActivityGroup 一起使用吗?

    I know ActivityGroup已弃用 但我正在尝试结合用户界面NativeActivty带有一些 Java Android APIViews 我正在尝试制作一个混合用户界面 其中屏幕的一部分来自NativeActivity 我用这