mirror of
https://github.com/bevyengine/bevy
synced 2024-12-22 19:13:08 +00:00
e924df0e1a
# Objective Add two features to switch bevy to use `NativeActivity` or `GameActivity` on Android, use `GameActivity` by default. Also close #12058 and probably #12026 . ## Solution Add two features to the corresponding crates so you can toggle it, like what `winit` and `android-activity` crate did. --- ## Changelog Removed default `NativeActivity` feature implementation for Android, added two new features to enable `NativeActivity` and `GameActivity`, and use `GameActivity` by default. ## Migration Guide Because `cargo-apk` is not compatible with `GameActivity`, building/running using `cargo apk build/run -p bevy_mobile_example` is no longer possible. Users should follow the new workflow described in document. --------- Co-authored-by: François Mockers <francois.mockers@vleue.com> Co-authored-by: BD103 <59022059+BD103@users.noreply.github.com> Co-authored-by: Rich Churcher <rich.churcher@gmail.com>
67 lines
1.6 KiB
Groovy
67 lines
1.6 KiB
Groovy
plugins {
|
|
alias(libs.plugins.android.application)
|
|
}
|
|
|
|
android {
|
|
namespace 'org.bevyengine.example'
|
|
compileSdk 34
|
|
|
|
defaultConfig {
|
|
applicationId "org.bevyengine.example"
|
|
minSdk 31
|
|
targetSdk 33
|
|
versionCode 1
|
|
versionName "1.0"
|
|
// need this otherwise it won't insert libc++_shared.so
|
|
externalNativeBuild {
|
|
cmake {
|
|
arguments "-DANDROID_STL=c++_shared"
|
|
}
|
|
}
|
|
// set up targets
|
|
ndk {
|
|
abiFilters 'arm64-v8a'
|
|
}
|
|
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
|
}
|
|
externalNativeBuild {
|
|
cmake {
|
|
path "CMakeLists.txt"
|
|
}
|
|
}
|
|
buildTypes {
|
|
release {
|
|
minifyEnabled false
|
|
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
|
|
}
|
|
}
|
|
compileOptions {
|
|
sourceCompatibility JavaVersion.VERSION_1_8
|
|
targetCompatibility JavaVersion.VERSION_1_8
|
|
}
|
|
buildFeatures {
|
|
viewBinding true
|
|
}
|
|
// The final part to insert libc++_shared.so only
|
|
packagingOptions {
|
|
exclude 'lib/*/libdummy.so'
|
|
}
|
|
|
|
sourceSets {
|
|
main {
|
|
assets.srcDirs += files('../../../../assets')
|
|
|
|
res.srcDirs += files('../../../../assets/android-res')
|
|
}
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
|
|
implementation libs.appcompat
|
|
implementation libs.material
|
|
implementation libs.constraintlayout
|
|
testImplementation libs.junit
|
|
androidTestImplementation libs.ext.junit
|
|
androidTestImplementation libs.espresso.core
|
|
}
|