Skip to content

kevinaltschuler/bevy-mobile

Repository files navigation

bevy-mobile

SO NASTY THAT ITS PROBABLY SOMEWHAT OF A TRAVESTY

bevy for iphone and android, using React Native

IOS Installation

Requirements

  1. OS X - This repo only contains the iOS (7+) implementation right now, and Xcode only runs on Mac.
  2. Xcode 6.3 or higher is recommended.
  3. Homebrew is the recommended way to install node, watchman, and flow.
  4. brew install node. New to node or npm?
  5. brew install watchman. We recommend installing watchman, otherwise you might hit a node file watching bug.
  6. brew install flow. If you want to use flow.

Setup

  1. git clone git@github.com:kevtastic/bevy-mobile.git
  2. in the shell, naviagte to (your git folder)/bevy-mobile/
  3. npm install
  4. open xcode
  5. In XCode, in the project navigator right click LibrariesAdd Files to [your project's name]
  6. Go to node_modulesreact-native-iconsios and add ReactNativeIcons.xcodeproj
  7. Add libReactNativeIcons.a (from 'Products' under ReactNativeIcons.xcodeproj) to your project's Build PhasesLink Binary With Libraries phase
  8. Run the project (Cmd+R)

Android Installation

Requirements

  1. Download Android Studio
  • Android Studio isn't completely necessary, we just need the android sdk. download it separately if you want to
  1. Download the Java JDK
  2. Download node.js (^v4.0.0)
  3. Mac OSX: brew install node.
  4. Windows: nodist
  5. Linux: nvm
  6. If not using an emulator, enable developer mode on your device (go to settings and tap version 7 times)
  7. Add android-sdk/tools to path so we can use adb commands
  8. Run android sdk
  • Download the latest API version (SDK platform and Google APIs Intel x86_64 image are the only ones we need)
  • Also Install (in Extras) Android Support Repository, Android Support Library, Google Repository, all the Google Play stuff, and Intel HAXM (need to run a separate installer)
  1. Install Genymotion here - we're not using the default emulator
  • You need to create an account. Just use the free version for now
  • Im currently using a virtual Nexus 5 w/ API 22
  1. Flash Genymotion with ARM translation and the Google APIs. Instructions here
  • This allows us to use Google Login, and maybe some other neat stuff in the future. Right now the default emulators have crappy support for Google APIs and are usually outdated

Setup

  1. git clone git@github.com:kevtastic/bevy-mobile.git
  2. npm install
  3. npm install -g react-native-cli
  4. Add the ANDROID_HOME path variable
  5. Linux: export ANDROID_HOME="/home/[user]/Android/Sdk"
  6. Windows: path is probably at C:\Users[user].android\sdk
  7. in a separate terminal - npm start or react-native start
  8. react-native run-android
  • This will build the app, install it, and run it on your virtual/physical device

Deployment

  1. In the root of the project, run ./android-bundle.js
  • This bundles and optimizes all the js into the index.android.bundle js file.
  • If you can't execute the script, then run chmod +x ./android-bundle.sh to flip the executable flag
  1. cd android
  2. ./gradlew assembleRelease will give you a production APK (located in android/app/build/outputs/apk/app-release.apk)
  3. IMPORTANT!! Test the release build on an emulator/physical device first with ./gradlew installRelease DONT PUSH A BROKEN BUILD
  4. Once you're sure it works, upload the app-release.apk to the Google Play Store

About

react-native implementation of bevy

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published