gomobile如何在apk中嵌入资产

2023-11-29

使用 gomobile for Android 进行开发时。如何在 apk 文件中包含资源(html、js、图像)?我有一个在 apk 内部运行的网络服务器,它可以在 apk 内部运行,也可以与 go run 一起运行,但是当打包在手机上的 apk 内部时,该服务无法找到它的资产/静态文件。


您必须将资产放在名为“assets”的目录中。

看这个例子:

https://github.com/udhos/fugo/tree/master/demo/invader/assets

然后就可以使用该包了golang.org/x/mobile/asset加载所需的资源:

import "golang.org/x/mobile/asset"

f, err := asset.Open("image.png")

示例代码取自https://github.com/udhos/fugo/blob/master/demo/invader/main.go:

func loadFull(name string) ([]byte, error) {
    f, errOpen := asset.Open(name)
    if errOpen != nil {
        return nil, errOpen
    }
    defer f.Close()
    buf, errRead := ioutil.ReadAll(f)
    if errRead != nil {
        return nil, errRead
    }
    log.Printf("loaded: %s (%d bytes)", name, len(buf))
    return buf, nil
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

gomobile如何在apk中嵌入资产 的相关文章

  • 如何使用应用程序接口将蓝牙套接字传递给另一个活动

    因此 根据我收集的信息 套接字连接既不可序列化 也不可分割 但我需要将蓝牙连接传递给另一个活动 我不想作为中间人编写服务 所以请不要将此作为解决方案发布 我听说有一种方法可以使用自定义应用程序接口来传递这些类型的对象 但我一生都找不到这样的
  • 容器中的 JVM 计算处理器错误?

    最近我又做了一些研究 偶然发现了这一点 在向 OpenJDK 团队抱怨之前 我想看看是否有其他人观察到这一点 或者不同意我的结论 因此 众所周知 JVM 长期以来忽略了应用于 cgroup 的内存限制 众所周知 现在从 Java 8 更新某
  • Android 中的列表视图分页

    我有一个列表视图 其中显示了 50 个元素 我决定对视图进行分页 以便视图的每个部分都有 10 个元素 然后单击 下一个 按钮以获取下一个 10 个元素 如何设置10个数据 我关注这篇文章http rakhi577 wordpress co
  • 所有平台上的java

    如果您想用 java 为 Windows Mac 和 Linux 编写桌面应用程序 那么所有这些代码都相同吗 您只需更改 GUI 即可使 Windows 应用程序更像 Windows 等等 如果不深入细节 它是如何工作的 Java 的卖点之
  • 在 IntelliJ 中运行 Spring Boot 会导致 Unable to load 'javax.el.E​​xpressionFactory'

    我正在尝试运行一个简单的 Spring Boot 应用程序 该应用程序具有以下 Maven pom file
  • Golang 正则表达式在字符串之间替换

    我有一些可能采用以下形式的字符串 MYSTRING MYSTRING n MYSTRING n MYSTRING randomstringwithvariablelength n 我希望能够将其正则表达式为MYSTRING foo 基本上替
  • 我在 PopupMenu 中使用 ShareActionProvider,但显示两个 PopupMenu?

    我在 PopupMenu 中使用 ShareActionProvider 但是当我单击共享菜单项时 它会在屏幕上显示两个 PopupMenus 一个被另一个覆盖 一个显示应用程序图标和名称 另一个仅显示应用程序名称 除了这个问题之外 它工作
  • Android Root 执行 su 带参数

    我在使用参数执行 su 时遇到问题 包含空格 我的 Command java 看起来像这样 public class Command Process process public String executeCommand String c
  • 改变for循环的顺序?

    我遇到一种情况 我需要根据用户输入以不同的顺序循环遍历 xyz 坐标 所以我是 3D 空间中的一个区域 然后是一组像这样的 for 循环 for int x 0 x lt build getWidth x for int y 0 y lt
  • 如何在Java媒体框架中学习.wav持续时间?

    我正在尝试使用 java 媒体框架将 mov 文件与 wav 文件合并 因此我需要知道它们的持续时间 我怎样才能做到这一点 任何想法 将不胜感激 您可以使用以下方式了解声音文件的持续时间 即 VitalyVal 的第二种方式 import
  • Android Gradle 同步失败:无法解析配置“:classpath”的所有工件

    错误如下 Caused by org gradle api internal artifacts ivyservice DefaultLenientConfiguration ArtifactResolveException Could n
  • 如何关闭 EditText 中的建议?

    如何在 Android 中关闭 EditText 中的建议 android inputType textNoSuggestions 根据this http comments gmane org gmane comp handhelds an
  • 在android中创建SQLite数据库

    我想在我的应用程序中创建一个 SQLite 数据库 其中包含三个表 我将向表中添加数据并稍后使用它们 但我喜欢保留数据库 就好像第一次安装应用程序时它会检查数据库是否存在 如果存在则更新它 否则如果不存在则创建一个新数据库 此外 我正在制作
  • 使用 secp256r1 曲线和 SHA256 算法生成 ECDSA 签名 - BouncyCastle

    我正在尝试使用带有 secp256r1 曲线 P256 的 ECDSA 和用于消息哈希的 SHA256 算法生成签名 我也在使用 Bouncy Castle 库 下面的代码 public class MyTest param args pu
  • 如何在Android中创建一个简洁的两栏输入表单?

    我想创建一个整洁的两列输入表单 如下所示 到目前为止我的 xml 布局代码
  • 使用 JAD 反编译 java - 限制

    我正在尝试使用 Java 中的 JAD 反编译几个 jar 文件 我也尝试过 JD GUI 但运气更差 但出现了很多错误 一种类型 易于修复 似乎是内部类 但我也发现了这段代码 static int SWITCH TABLE atp com
  • 在 Android 手机中通过耳机插孔发送数据

    我目前正在处理一个新项目 我必须通过具有特定电压的耳机插孔发送数据 然后我可以在该电压上工作 所以这里我需要根据我的数据来编程具体电压 我是否可以在android中访问耳机的输出电压 然后创建一个应用程序来控制该电压 这是一篇讨论此问题的
  • 摩尔斯电码 至 英语

    我现在的问题是让 摩尔斯电码转英语 正常工作 将英语转换为莫尔斯电码的第一部分工作正常 我知道以前已经有人问过这个问题 但我不知道我做错了什么 我知道我需要在某个地方进行拆分 但我只是不确定将其放在代码中的何处 现在 莫尔斯电码到英语的部分
  • 如何在不同版本的Google App Engine中使用自定义域名?

    我使用谷歌应用程序引擎作为我的 Android 和 Web 应用程序的服务器 我使用 Android Studio 开发了 Android 应用程序 并使用 Eclipse 开发了 Web 应用程序 我在应用程序引擎中部署了两个版本 第一个
  • 我应该如何在 Android 上使用 Retrofit 处理“无互联网连接”

    我想处理没有互联网连接的情况 通常我会运行 ConnectivityManager cm ConnectivityManager context getSystemService Context CONNECTIVITY SERVICE N

随机推荐

  • 如何为非英语版本的项目显示适当的语言标签

    我有一个带有 URI 的项目http hdl handle net 10862 717用我们当地的语言 有英文版本 http hdl handle net 10862 152
  • 以数组形式发送数据的多个单选按钮组

    我尝试过以下方法 在我的控制器中 我有一个数组 现在的问题是我只能选择这四个中的一个
  • 我怎样才能将utf8字符转换为iso8859-1

    问题就是标题说的 谁能告诉我如何在红宝石中做到这一点 更新 ruby iconv从 Ruby 1 9 3 开始已被encode方法 看J rg W Mittag 的回答详细信息 但简而言之 utf8string pp iso string
  • WSO2 API Manager,是否可以禁用访问令牌机制

    是否可以在 WSO2 API Manager 中禁用访问令牌机制 所以我们不必设置身份验证承载标头 我知道我可以将访问令牌超时设置为 1秒 以使其无限 Answer recommended by WSO2 Collective 是的你可以
  • 我应该在每个页面上重新生成会话 ID 吗?

    我正在尝试为我的用户身份验证会话添加更多安全性 当用户登录时我regenerate session id但我想听听你的回答 如果我regenerate session id在我验证用户身份的每个页面上都会帮助我 在每个页面上验证用户身份 我
  • 如何使用 python 使用 SSL 连接到 Elasticsearch?

    我正在尝试使用 SSL 从 Python 连接到 Elasticsearch 节点 我正在使用基本代码 from elasticsearch import Elasticsearch from ssl import create defau
  • 如何查看我的反应式扩展查询正在做什么?

    我正在编写一个包含大量运算符的复杂反应式扩展查询 我怎样才能看到发生了什么 我问并回答这个问题是因为它出现得相当多 并且可能具有良好的通用性 在开发 Rx 运算符时 您可以随意将此函数附加到它们以查看发生了什么 public static
  • Android - 管理布局景观

    我需要一个活动根据方向加载不同的片段 活动 gt 肖像 片段肖像 活动 gt 景观 片段景观 这是activity layout xml
  • PostgreSQL 检查时间戳字段是否为空

    我遵循了这些指示检查用户登录时是否被软删除 在下面的示例中 我可以检查布尔值 Class User lt ActiveRecord Base def self find for authentication conditions super
  • 从 CSD 查找二维空间谱的正确方法

    我尝试从上述方程中实现空间谱 附后 其中kX kY是k空间中的网格点 C w r 第 i 个和第 j 个传感器之间的互谱密度 这里是大小为 ns ns gt 传感器数量的矩阵 x y 是传感器之间的距离 nk kx ky 的网格密度 我寻找
  • 调用 OnTriggerStay() 时检查按键情况

    我有一个 NPC 当玩家碰撞器与 NPC 发生碰撞时 我的玩家可以与其交谈 我使用这段代码来实现这一点 private void OnTriggerStay2D Collider2D other if other gameObject ta
  • Asp.Net Mvc 在临时数据视图中显示异常

    我正在处理基本控制器中的错误 我需要在剃刀视图中显示存储在 tempdata 中的错误 异常类型 我怎样才能做到这一点 基本控制器代码 protected override void OnException ExceptionContext
  • iPhone 版 Google 移动分析的调度问题

    我已将 Google 移动分析集成到我的 iPhone 应用程序中 但由于某种原因 页面浏览量和事件未调度 我将其放入我的应用程序委托 applicationDidFinishLaunching 方法中 我已经删除了 UA 字符串 GANT
  • Javascript 获取数据表列名称

    我正在使用 Google 图表构建堆叠条形图 创建一个监听器来处理 onclick 事件 共有三列 站点名称 已完成和未完成 我希望侦听器捕获用户是否单击 完成或不完整 当我单击第一行数据时 这就是我得到的 我知道在我的 getColumn
  • Perl:匹配模式后如何打印下一行?

    我想在匹配图案或线条后打印特定数据 我有一个这样的文件 List car Design S Date Sun 10 10 b black g green r red Car Type No color N17 bg099 g Total 1
  • 删除小型设备(手机)上的边距空白

    我不希望小型设备的边缘有任何空白 当屏幕已经很小时 使用除屏幕全宽之外的任何内容都会适得其反 所以我通过 WordPress 使用主题 但我找到了容器 div 并能够修改它 我想让它更窄 我还声明了一个比容器 宽度为 65 更宽的 div
  • 使用 NVDA 屏幕阅读器自动进行辅助功能测试

    我正在致力于为我们的一个网络应用程序实现可访问性 针对视障人士 它需要符合 ARIA 现在我们正在使用屏幕阅读器手动测试我们的更改 例如 我们的应用程序中有树控件 我打开 NVDA 屏幕阅读器 然后浏览我的树节点 NVDA 屏幕阅读器会说话
  • Jekyll 中的 Pygments 语法高亮显示无需启动

    如果您将 Jekyll 与 Pygments 语法高亮包一起使用 则可以编写 highlight clojure def something foobar endhighlight 这会产生一个 div 包含该行 根据 Clojure 语法
  • 错误 1452:无法添加或更新子行:外键约束失败

    我在 MySQL Workbench 中创建了表 如下所示 订单表 CREATE TABLE Ordre OrdreID INT NOT NULL OrdreDato DATE DEFAULT NULL KundeID INT DEFAUL
  • gomobile如何在apk中嵌入资产

    使用 gomobile for Android 进行开发时 如何在 apk 文件中包含资源 html js 图像 我有一个在 apk 内部运行的网络服务器 它可以在 apk 内部运行 也可以与 go run 一起运行 但是当打包在手机上的