#android #build #ios #game-engine #tool

crossbow

跨平台游戏构建工具和工具包

21 个版本

0.2.3 2022年9月12日
0.2.2 2022年8月30日
0.1.19 2022年8月10日
0.1.7 2022年7月28日
0.1.2 2022年1月9日

#377 in 游戏开发


用于 crossbundle

MIT/Apache

80KB
1K SLoC

Rust 1K SLoC // 0.0% comments Kotlin 215 SLoC // 0.3% comments Shell 41 SLoC // 0.1% comments

Crossbow Splash Image

CI Info Crate Info Documentation Crossbundle Crate MIT/Apache 2.0 FOSSA Status GitHub Stars

什么是Crossbow?

crossbow 项目旨在为在 Rust 中进行跨平台游戏开发提供一个完整的工具包,从项目创建到发布。此外,该项目简化了 AndroidiOS 应用的创建、打包和签名。我们希望尽可能多的工具——引擎无关——帮助 Rust 游戏开发者将它们集成到他们的引擎或游戏中。

为什么选择Crossbow?

已经存在 cargo-apkcargo-mobilecargo-xcode 等工具——为什么还需要另一个打包工具?

项目 crossbow 不仅是一个 AndroidiOS 的打包工具,它还是跨平台构建工具、插件和工具包!使用 crossbundle,您可以在没有 Java 或设置任何 Gradle 项目的情况下,使用花哨的 Crossbow Android 插件(未来将支持 iOS);使用 crossbundle-tools,您可以自定义并创建新的命令;使用 crossbow-android,您可以用 Java/Kotlin 编写您自己的 Android 插件。

许多功能受到了 GodotXamarincargo-apk 的启发。

设计目标

  • 可定制:使用现有工具创建新命令。
  • 简单:易于安装并开始开发,同时对于高级开发者来说也非常灵活。
  • 灵活:可以构建纯 .apk/.aab.app/.ipa;或者使用 Gradle/XCode 的帮助。
  • Rust:不要离开您的 Rust 代码——一切 都可以通过 Cargo.toml 进行配置。
  • 插件:类似于 Godot 的 Android(未来将支持 iOS)插件,带有 Rust 包装器!

文档

现在我们建议您阅读crossbow的文档。在那里您将找到如何设置开发环境、安装所需的crate以及如何使用工具。

项目结构

Crossbundle crate

名称 描述 状态
crossbundle 用于构建和运行应用程序的命令行工具。
crossbundle-tools crossbundle中用于构建/打包/签名bundle的工具包。

Crossbow平台crate

名称 描述 状态
crossbow-android Crossbow Android平台实现。 🆗
crossbow-ios Crossbow iOS平台实现。 🛠

Crossbow插件

名称 描述 状态
admob-android Google AdMob的Android插件。 🆗
play-games-services Google Play Games Services的Android插件。 🆗
play-billing Google Play Billing的Android插件。 🆗
play-core Google Play Core的Android插件。 📝

辅助crate

名称 描述 状态
android-tools-rs 用于构建和开发应用程序的Android相关工具。
android-manifest-rs AndroidManifest的Rust序列化和反序列化器。
apple-bundle-rs AppleBundleResources的Rust序列化和反序列化器。

✅ = 工作并已测试 — 🆗 = 工作但可能包含错误 — 🛠 = 开发中 — 📝 = 规划中

特别感谢

此外,该项目最初由Web3 Foundation Grants Program资助。向他们大声说谢谢!

W3F Grants Badge

许可

许可方式为以下之一

任选其一。

FOSSA Status

依赖

~0.5-8MB
~63K SLoC