问题标签 [gomobile-android]

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.

0 投票
1 回答
1381 浏览

go - 在 Windows 10 的 $ANDROID_HOME/ndk-bundle 和 $ANDROID_NDK_HOME 中找不到 Android NDK

我正在按照官方指南安装 gomobile。我安装了 Android Studio 并通过 Android Studio SDK 管理安装NDK (side by side)和所有 SDK 包。Android Studio 在我的设备上编译和部署我的普通 Android 应用程序没有问题。

我成功运行(我的意思是没有任何错误):

然后我跑了:

并得到错误:

当我按照另一个旧线程的答案中的建议运行时:

我得到:

我需要做什么来解决这个问题?

0 投票
1 回答
40 浏览

go - gomobile 不支持 android 的 c-archive

当我尝试使用“gomobile bind”工具构建静态库时,出现此错误:flag -buildmode 的无效值“c-archive”:android/arm 不支持 buildmode c-archive

0 投票
1 回答
150 浏览

apk - gomobile build,Paho mqtt 客户端无法连接到 APK 中的 mqtt 代理

我正在做一个需要使用gomobile 工具来创建 Android 应用程序的项目。我在 Go 中的示例代码如下

当我使用“gomobile bind”绑定此代码时,生成 Golang 插件并在 android 项目中调用它们没有问题。连接很满意,我可以验证本地 mqtt 代理(mosquitto)和 mqtt 客户端应用程序也在通信。

但是当我使用"gomobile build -target=android"生成 APK 文件时,连接函数会生成并出错。为了能够测试日志,我使用了公共代理而不是本地 mqtt 代理。我更换了

var经纪人=“127.0.0.1”

通过 HiveMQ 公共代理地址(我已经验证了公共代理功能)

var broker = "broker.mqttdashboard.com"

从 mqtt 客户端应用程序连接到 mqtt 代理似乎存在问题。这是我在日志中找到的确切错误消息:

E/Go:恐慌:网络错误:拨号 tcp:查找 broker.mqttdashboard.com:没有与主机名 goroutine 11 [运行]关联的地址:E/GoLog:恐慌:网络错误:拨号 tcp:查找 broker.mqttdashboard.com:否与主机名 E/Go 关联的地址:main.starting()

这是由我的代码中的“panic(tokenClient.Error())”部分生成的。

知道为什么连接没有使用“gomobile build”解决,而当我使用“gomobile bind”时它正在工作?

0 投票
1 回答
149 浏览

android - “gomobile build”如何创建文件和写入文件(安装在三星平板电脑上的外部 micro-SD 卡)(在 APK 中)?

原始问题:

有谁知道gomobile构建(非绑定)如何支持文件系统?如本讨论所述,我能够使用资产包打开和读取文件。

但不确定如何在 gomobile 生成的 APK 文件中创建对新文件的写入,我可以在 Go 中运行以下充足的代码并验证是否使用提供的消息创建了“testFile.txt”。

但是在生成 APK 文件并在平板电脑(Android)上运行后,我得到如下文件访问错误,并且没有创建“testFile.txt”。

I/GoLog:打开 testFile.txt:只读文件系统

任何提示表示赞赏。

根据此说明更新了我的问题:

你使用的是什么版本的 Go('go 版本')?

这个问题会在最新版本中重现吗?

不适用

您使用的是什么操作系统和处理器架构('go env')?

视窗 10 专业版

你做了什么?

在原始问题部分进行了描述,但总而言之,我需要添加一个能够将日志写入三星 S6 lite 平板电脑上已安装的微型 SD 卡的功能。这是我在 Go 中编写文件时遵循的示例代码。它在我运行 go 时有效,但在平板电脑上生成和安装 APK 文件后我遇到只读错误消息

你期待看到什么?

期望 Android 应用程序(安装为 gomobile 构建生成的 APK 文件)能够创建文件并写入创建的文件

你看到了什么?

只读错误信息。

I/GoLog:打开 testFile.txt:只读文件系统

0 投票
0 回答
69 浏览

go - 在 gomobile 上启动另一个 android 活动

使用 golang android 库“gomobile”制作全能的 android 应用程序时,如何从 go 代码启动另一个活动?

org.golang.app.GoNativeActivity正在启动并正常工作。我想在同一个应用程序中启动另一个活动,特别是“受信任的 Web 应用程序活动”。

尝试通过在 AndroidManifest.xml 中添加一个活动来打开意图深层链接,但它说com.google.androidbrowserhelper.trusted.LauncherActivitygomobile can only build an .apk for GoNativeActivity, not com.google.androidbrowserhelper.trusted.LauncherActivity

我不想在第二个活动中编写任何逻辑。我只想在 webview (TWA) 中显示一个网页 - 就像在应用程序在后台运行时打开浏览器一样。所有逻辑都将在 main 中运行GoNativeActivity,(这是一个没有 UI 的本地 Web 服务器)

在不使用 Android Studio 项目的情况下是否有解决此问题的方法?

0 投票
0 回答
57 浏览

go - golang中的可移动SD卡路径查找器

我正在使用 golang 和gomobile开源包进行 android 应用程序开发。通过这种方法,我可以生成 APK 文件,然后在平板电脑上安装和启动 android 应用程序。

我需要找到用于写入/读取的 sdcard(辅助内存)的路径。我知道我们可以使用以下函数在 Android 中找到二级内存路径。

目前,在我的 golang API 中,我已经硬编码了 sdcard 路径并且它正在工作。我通过开发一个小的纯Android项目并使用“getExternalFilesDirs(”“)”函数获得了sdcard路径。

但这不是一种实用的方法,因为每个 Android 设备的路径可能不同。

我的问题: 在 Golang 中是否有任何类似的功能可以让我在平板电脑上安装 sdcard 的路径?

0 投票
0 回答
85 浏览

go - GoMobile 构建缺少库

我在尝试使用 Go mobile 构建时遇到以下错误,全新安装和全新 NDK 安装。ANDROID_NDK_HOME 已设置,但似乎找不到特定的库。

在 Mac 上运行。

0 投票
0 回答
41 浏览

android - 使用 Go Mobile (gomobile) 绑定 Gosseract

有没有人尝试使用 Gosseract 编写 Go 代码并将其绑定到 Android?

我正在尝试将其存档,gomobile bind但出现以下错误:

欢迎所有想法,除了 Android 上的 Tesseract。我需要用 Go Lang 编写,并将其导入 Android 上的 Java。

我安装了所有依赖项:

0 投票
1 回答
66 浏览

java-native-interface - 将 aar 库添加到系统服务时,LoadLibrary() 失败?

我写了一个系统服务,但它在启动时失败并显示以下消息:

基本上在 .aar 库的代码中,它尝试使用 System.loadLibrary() 加载库,但它失败了,即使它在 aar 文件中。当我尝试在 android 应用程序中执行它时它甚至可以工作,但它在 android 上失败。

值得一提的是,我使用 gomobile 创建了 .aar 库,将 go-project 绑定到 .aar 库中。