You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
Oleksandr Karpovich 7c3fd3a56f Manual versions update 2 years ago
..
.run Refactor FallingBalls MPP sample to follow KMM project structure. (#2478) 2 years ago
androidApp update experimental/examples/falling-balls (#2486) 2 years ago
desktopApp Refactor FallingBalls MPP sample to follow KMM project structure. (#2478) 2 years ago
gradle/wrapper Refactor FallingBalls MPP sample to follow KMM project structure. (#2478) 2 years ago
iosApp Refactor FallingBalls MPP sample to follow KMM project structure. (#2478) 2 years ago
jsApp Refactor FallingBalls MPP sample to follow KMM project structure. (#2478) 2 years ago
shared update experimental/examples/falling-balls (#2486) 2 years ago
.gitignore Refactor FallingBalls MPP sample to follow KMM project structure. (#2478) 2 years ago
README.md WebAssembly means "JS in browser with WebAssembly Skia" (#2487) 2 years ago
apple-id.png iOS gradle: create task to deploy on connected iOS device (#1944) 3 years ago
build.gradle.kts fix examples with Kotlin Native issue (#2534) 2 years ago
gradle.properties Manual versions update 2 years ago
gradlew Refactor FallingBalls MPP sample to follow KMM project structure. (#2478) 2 years ago
gradlew.bat update experimental/examples/falling-balls (#2486) 2 years ago
ios-app.png iOS gradle: create task to deploy on connected iOS device (#1944) 3 years ago
run-configurations.png Refactor FallingBalls MPP sample to follow KMM project structure. (#2478) 2 years ago
settings.gradle.kts Extract plugins versions from root build.gradle.kts 2 years ago

README.md

Falling Balls game

Game can run on Android, iOS, desktop or in a browser.

Prerequisites: to run on iOS and Android, you should have "Kotlin Multiplatform Mobile" plugin installed either in Android Studio or in AppCode with installed CocoaPods.

How to run

Choose a run configuration for an appropriate target in IDE and run it.

run-configurations.png

To run on iOS device, please correct iosApp/Configuration/TeamId.xcconfig with your Apple Team ID. Alternatively, you may setup signing within XCode opening iosApp/FallingBalls.xcworkspace and then using "Signing & Capabilities" tab of FallingBalls target. See also how to prepare XCode section below.

Then choose iosApp configuration in IDE and run it (may also be referred as FallingBalls in the Run Configurations or iosApp_ for Android studio).

Run on desktop via Gradle

./gradlew desktopApp:run

Run JS in browser with WebAssembly Skia via Gradle

./gradlew jsApp:jsBrowserDevelopmentRun

Prepare Xcode to launch on iOS device

  1. Add your Apple ID.
    Xcode -> Preferences... -> Accounts
    apple-id.png

  2. Create certificates with XCode in temporary project.
    You can create a certificate in Xcode. Create a new iOS app in Xcode.
    File -> New -> Project
    Choose iOS, App:
    ios-app.png

  3. In next dialog set any product name and choose your teamID.

  4. Run project on iOS Device.
    Xcode prompts you to install the certificate. Require password from login.keychain

  5. Done After a successful launch on the device - you can delete this temporary project.
    Certificates will remain in login.keychain

Run native on MacOS

Choose shared[macosX64] or shared[macosArm64] configuration in IDE and run it.