在跨平台移动应用程序开发的过程中,我遇到了Golang,它有一个GoMobile命令行工具,可以生成语言绑定,从而可以从Java和Objective-C调用Go函数。但是,对导出的函数/方法中使用的类型有一些限制,如下所述:https://godoc.org/golang.org/x/mobile/cmd/gobind#hdr-Type_restrictions
所以关于在导出函数中使用的数据类型中支持struct(struct of struct)切片的工作的任何想法
答案 0 :(得分:0)
我认为目前没有人在gomobile slice接口实现上工作。 您可能要检查此便利项目。
https://github.com/scisci/go-mobile-collection
这是一个简单的示例,您可以在没有任何项目的情况下共享外部切片:
type MyType struct {
Id int64
Name string
}
var (
items []MyType
)
func GetItemsCount() int {
return len(items)
}
func GetItem(i int) *MyItem {
if i >= 0 && i < len(items) {
return &items[i]
}
return nil
}
对于线程,我通常在代码中添加互斥锁。
我们共享我们的业务逻辑(所有我们可以从移动本机代码中删除的东西),并且它运行完美。
在gomobile 1.13
模式下使用bind
。仅一个有效的iOS / Android跨平台开发工作解决方案。 React很好,但占用更多空间。
确实像Swift,但是在移动应用中大约40mb的lib杀死了它。在我们的应用程序https://play.google.com/store/apps/details?id=com.lonje和即将发布的iOS版本:https://apps.apple.com/us/app/lonje-anonymous-chat-video/id1215525783