Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Google Play Billing plugin #143

Merged
merged 5 commits into from
Aug 11, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 10 additions & 9 deletions .github/scripts/publish_crates.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,18 +3,19 @@

# Legends say that the order of the crates should be kept.
crates=(
platform/android
platform/ios
plugins/admob-android
plugins/play-games-services
crossbundle/tools
crossbundle/cli
./platform/android
./platform/ios
./
./crossbundle/tools
./crossbundle/cli
./plugins/admob-android
./plugins/play-games-services
)
for crate in "${crates[@]}"
do
echo "Publishing ${crate}"
cargo publish --manifest-path=$crate/Cargo.toml
pushd $crate
cargo publish
sleep 40
popd
done
sleep 40
cargo publish
4 changes: 3 additions & 1 deletion .github/workflows/docker.yml
Original file line number Diff line number Diff line change
@@ -1,10 +1,12 @@
name: Docker images
name: Publish Docker images
on:
push:
branches: [main]
paths:
- '.github/docker/*.Dockerfile'
- '.github/workflows/docker.yml'
- '**.rs'
- '**.toml'
jobs:
build-crossbundle-dockerfile:
name: Build Crossbundle Dockerfile
Expand Down
8 changes: 4 additions & 4 deletions Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
[package]
name = "crossbow"
version = "0.1.9"
version = "0.2.0"
edition = "2021"
authors = ["DodoRare Team <support@dodorare.com>"]
description = "Cross-Platform build tools and toolkit for games"
repository = "/~https://github.com/dodorare/crossbow"
license = "MIT OR Apache-2.0"
keywords = ["build", "android", "ios", "tools"]
readme = "README.md"
exclude = [".github/**/*"]
exclude = ["assets/", "docs/"]

[dependencies]
thiserror = "1.0"
Expand All @@ -21,10 +21,10 @@ apple-bundle = { version = "0.1.4", optional = true }

[target.'cfg(target_os = "android")'.dependencies]
ndk-glue = "0.7.0"
crossbow-android = { path = "platform/android", version = "0.1.9", optional = true }
crossbow-android = { path = "platform/android", version = "0.2.0", optional = true }

[target.'cfg(target_os = "ios")'.dependencies]
crossbow-ios = { path = "platform/ios", version = "0.1.9", optional = true }
crossbow-ios = { path = "platform/ios", version = "0.2.0", optional = true }

[patch.crates-io]
winit = { git = "/~https://github.com/rust-windowing/winit", rev = "f93f2c158bf527ed56ab2b6f5272214f0c1d9f7d" }
Expand Down
22 changes: 14 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# [![Crossbow Splash Image](assets/splash.png)](/~https://github.com/dodorare/crossbow)
# [![Crossbow Splash Image](/~https://github.com/dodorare/crossbow/blob/main/assets/crossbow/splash.png?raw=true)](/~https://github.com/dodorare/crossbow)

[![CI Info](/~https://github.com/dodorare/crossbow/workflows/CI/badge.svg)](/~https://github.com/dodorare/crossbow/actions)
[![Crate Info](https://img.shields.io/crates/v/crossbow.svg)](https://crates.io/crates/crossbow)
Expand All @@ -16,15 +16,15 @@ The `crossbow` project aims to provide a complete toolkit for cross-platform gam

> There are already [cargo-apk](/~https://github.com/rust-windowing/android-ndk-rs/tree/master/cargo-apk), [cargo-mobile](/~https://github.com/BrainiumLLC/cargo-mobile), [cargo-xcode](https://gitlab.com/kornelski/cargo-xcode), etc. - why do I need another packaging tool?

Project `crossbow` is not only a packaging tool for **Android** and **iOS** - it's cross-platform build tools and toolkit for Rust! With `crossbundle` you can create native **.apk/.aab** without any *Java* or setup *Gradle* project with fancy **Crossbow Android plugins** (**iOS** in near future); with `crossbundle-tools` you can customize and create new commands; with `crossbow-android` you can write your own Android plugins in *Java/Kotlin*.
Project `crossbow` is not only a packaging tool for **Android** and **iOS** - it's cross-platform build tools, plugins, and toolkit for Rust! With `crossbundle` you can create native **.apk/.aab** without any *Java* or setup *Gradle* project with fancy **Crossbow Android plugins** (**iOS** in near future); with `crossbundle-tools` you can customize and create new commands; with `crossbow-android` you can write your own Android plugins in *Java/Kotlin*.

A lot of functionality was inspired by [Godot](/~https://github.com/godotengine/godot), [Xamarin](https://dotnet.microsoft.com/en-us/apps/xamarin), and [cargo-apk](/~https://github.com/rust-windowing/android-ndk-rs/tree/master/cargo-apk).

## Design Goals

* **Customizable**: Create new commands with available tools.
* **Simple**: Easy to install and start hacking but also pretty flexible for strong devs.
* **Capable**: It's possible to build plain **.apk/.aab** or **.app/.ipa**; or with help of *Gradle/XCode*.
* **Flexible**: It's possible to build plain **.apk/.aab** or **.app/.ipa**; or with help of *Gradle/XCode*.
* **Rust**: Don't leave your *Rust* code - **everything** can be configured from `Cargo.toml`.
* **Plugins**: Godot-like plugins for **Android** (and **iOS** in future) with *Rust* wrapper!

Expand All @@ -41,15 +41,21 @@ Crossbundle crates:
| [crossbundle](./crossbundle/cli) | Command-line tool for building and running applications. | ✅ |
| [crossbundle-tools](./crossbundle/tools) | Toolkit used in `crossbundle` to build/pack/sign bundles. | ✅ |

Crossbow crates:
Crossbow Platform crates:

| Name | Description | Status |
| ---- | ----------- | ------ |
| [crossbow-android](./platform/android) | Crossbow Android Platform implementation. | 🆗 |
| [crossbow-ios](./platform/ios) | Crossbow iOS Platform implementation. | 🛠 |
| [crossbow-admob](./crossbow/admob) | Google AdMob Plugin for Android (iOS in future). | 🆗 |
| [crossbow-play-games-sdk](./crossbow/play-games-sdk) | Google Play Games Sdk for Android. | 🆗 |
| [crossbow-play-billing](./crossbow/play-billing) | Google Play Billing for Android. | 🛠 |

Crossbow Plugins:

| Name | Description | Status |
| ---- | ----------- | ------ |
| [admob-android](./crossbow/admob-android) | [Google AdMob](https://developers.google.com/admob/android/quick-start) Plugin for Android. | 🆗 |
| [play-games-services](./crossbow/play-games-services) | [Google Play Games Services](https://developers.google.com/games/services/) Plugin for Android. | 🆗 |
| [play-billing](./crossbow/play-billing) | [Google Play Billing](https://developer.android.com/google/play/billing) Plugin for Android. | 🆗 |
| [play-core](./crossbow/play-core) | [Google Play Core](https://developer.android.com/guide/playcore) Plugin for Android. | 📝 |

Helper crates:

Expand All @@ -65,7 +71,7 @@ Helper crates:

Also, this project initially funded by [Web3 Foundation Grants Program](/~https://github.com/w3f/Grants-Program/blob/master/applications/crossbow.md). Big shout-out to them!

<img src="assets/w3f_grants_badge.svg" alt="W3F Grants Badge" width="400px" />
<img src="assets/crossbow/w3f_grants_badge.svg" alt="W3F Grants Badge" width="400px" />

## License

Expand Down
File renamed without changes
File renamed without changes
Binary file removed assets/models/helmet/FlightHelmet.bin
Binary file not shown.
Loading