问题标签 [native-activity]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android-ndk - 动态加载 APK libs 文件夹中的共享对象
希望你能在这里帮助我。我设法创建了我的本地活动项目并将其打包。在 libs 文件夹中,我有一个在本机活动中动态加载(dlopen)的共享库。我知道包库被复制到:/data/data/packagename/lib 但是如何使用 dlopen 访问它?那可能吗?我以为我可以只使用本地文件夹名称来访问它,例如:./libMySharedLibrary,因为它们都在 APK/libs 子文件夹中。有谁如何获得正确的文件夹名称或如何访问这些共享库?
android - 在纯android原生中隐藏导航栏
我看过关于通过java隐藏android应用程序导航栏的文章和文章。但是,我想知道的是,如何通过纯 android c++ 本机活动应用程序为全屏应用程序(游戏)(根本没有 JAVA!)删除导航栏。android manifest 中的全屏可以隐藏顶部栏,但导航栏保持可见。
这是我希望删除的导航栏。
我在没有运气的情况下搜索了书籍,没有关于本地活动的实际文档,谷歌搜索没有任何结果。一些头文件中只有注释,这些注释很小,甚至没有帮助。似乎关于纯 c++ android 应用程序的话题是一个黑点,但市场上出现的许多游戏都是用 c++ 编写的。
我也试过设置:
但它似乎什么都不做,实际上所有的AConfiguratin_setXXX似乎什么都不做。也许我在错误的地方调用它?创建窗口后,我一直在APP_CMD_INIT_WINDOW期间调用它。我应该在哪里调用这个函数?
android - 避免使用 ALooper
是否可以避免在 NativeActivity 中使用 ALooper?
我正在编写一个没有应用胶水的本机活动,我想跳过 ALooper 的事情,我可以实现类似的东西,这对我的情况来说更具体,但对我来说重要的是不要失去任何功能,比如:运动、输入, 传感器, ... 。
据我所知,这个 ALooper 东西可以很容易地删除,但我并不完全确定,特别是为了将来的需要。
android - 当 android_main() 返回时,我是否必须释放分配的内存?
我正在使用 NativeActivity 和c++ 端android_native_app_glue.c/h
的android_main
函数。
我刚刚了解到,当应用程序被完全销毁(APP_CMD_DESTROY
生成事件)时,应用程序的Linux进程仍然没有被破坏,而是继续运行;而只是android_main()
返回并在应用程序重新启动时再次调用。
有趣的效果是,即使应用程序被完全销毁,也会有一些内存没有释放。例如,如果我在调用的 C++ 代码中创建了一个全局变量int test;
并为其设置了一个值,那么下次创建应用程序时123
它仍然是相同的。123
我假设我应该释放我在APP_CMD_DESTROY
生成时分配的所有内存android_main
并将返回。这个假设是真的吗?问题是:有多少内存可以留在内存中而不被释放的规则吗?一千字节可以吗?500k可以吗?50兆可以吗?400兆可以吗?
我的应用程序首先被销毁的原因是因为用户在另一个应用程序中做某事然后会返回到我的应用程序,而另一个应用程序会告诉我的应用程序用户在另一个应用程序中做了什么。如果我可以将所需的所有数据保留在内存中(通过全局变量),那将是最方便的,这样应用程序就知道在它被销毁后从哪里继续。尽管我知道制作全局变量通常被认为是一个坏主意。
那么,完全释放我分配的所有内存是个好主意吗,或者我可以保留一点,或者我可以保留很多并相信 Android 操作系统会继续执行并在这种情况下杀死实际的 Linux 进程它真的想摆脱分配的内存吗?因为如果我的应用程序在从另一个应用程序恢复后重新启动非常快并且它不需要在开始时加载一些资源,我将不胜感激。
android - Native Activity, GLES2.0: Uploading pixel array to screen
I created a pixmap using, for example, this code
On my Linux pc this pixmap can be shown with glDrawPixels or with glTexImage2D. But I can't find glDrawPixels or something same on Android GLES. I tried to copy image to screen with this
But it fails even if copying size is set to 1. How can I upload pixmap to screen?
Thanks.
android - GLES 2 函数在 Visual Studio 中不起作用
我正在使用 Visual Studio Community 2017,但此版本中的本机活动与 Visual Studio Community 2015 中的相同。
我刚刚在 Visual Studio 2017 中创建了一个新的本机活动项目,使用与此项目选项一起加载的默认程序。但是,每当我尝试使用专用于打开 gl es 2 的函数时,Visual Studio 都会针对我使用的每个打开的 gl es 2 函数返回一个错误,例如“错误:未定义对‘glCreateShader’的引用”。奇怪的是,即使我删除了 pch 文件中包含 open gl es 1 的行,以下代码仍然有效:
如果将以下函数放入默认的原生活动项目中(即使在包含 GLES2/gl2.h、GLES2/gl2ext.h 和 GLES2/gl2platform.h 之后)会导致上述错误:
}
我记得在 Android Studio 中发生了类似的错误,通过将以下内容添加到 cmakelists.txt 来修复该错误:
但是,我的 Visual Studio 项目不使用 CMake。
有人可以告诉我如何在 Visual Studio 2017 中成功使用 open gl es 2 吗?
c#-4.0 - 如何在与调用线程相同的线程上调用工作流
我正在使用 WF 运行活动,我想在与调用线程相同的线程上同步调用活动。我将如何使用 WorkflowInvoker.Invoke 做到这一点?以下是我的代码片段:
问题是,似乎活动(NA)在不同的线程上运行。有没有办法让活动在同一个线程上运行?我已阅读文章,其中 SynchronizationContext 可用于通过 WorkflowApplcation 执行此操作,但我在使用带有输出/返回参数的 WorkflowApplication.Run() 时遇到问题。
java - Android NativeActivity:AttachCurrentThread JNIInvokeInterface 不是结构或联合
我正在使用 C 中的 NativeActivity。我的目标是获取对 JNIEnv 的引用,以便进行进一步的 Android 调用。
根据我在 Android 文档和 Stackoverflow 上收集的示例,我不断看到这个
但我不断收到这个错误......
android - 如何为 Native Activity NDK 应用启用全屏沉浸式模式?
阅读https://developer.android.com/training/system-ui/immersive.html上的文档,我似乎找不到任何关于如何在 Native Activity NDK 应用程序中设置全屏沉浸模式的信息(不使用 JNI ) 因为似乎全屏沉浸模式只能从 Java 切换。
由于无法从清单中设置(在清单中设置 Android 沉浸式全屏模式),有没有办法通过 EGL 请求它?
似乎启用全屏沉浸式模式的唯一方法是在通过 EGL 请求表面之前通过 JNI 调用 setSystemUiVisibility?
java - How is an image size calculated natively/internally?
When we pass Options
with inJustDecodeBounds=true
to the BitmapFactory.decodeStream
method, it decodes only the file size(Height and width).
How does android calculate the size (height and width)?
Does it download the full file and then calculates the size?
In InputStream
there a method avaliable()
, but it returns only the estimated size.
I want to know the internal working of this.