Generate 3 different flavors: normal, playstore, embed.

This commit is contained in:
Miku AuahDark
2020-01-31 14:46:34 +08:00
parent 01c8018c36
commit 62684832a6
6 changed files with 75 additions and 1 deletions
+13
View File
@@ -16,6 +16,19 @@ android {
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
} }
} }
flavorDimensions 'mode'
productFlavors {
normal {
dimension 'mode'
}
playstore {
dimension 'mode'
}
embed {
dimension 'mode'
applicationIdSuffix "embed"
}
}
lintOptions { lintOptions {
abortOnError false abortOnError false
} }
+31
View File
@@ -0,0 +1,31 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest
package="org.love2d.android.executable"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" tools:node="remove" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" android:maxSdkVersion="18" tools:replace="android:maxSdkVersion" />
<application
android:allowBackup="true"
android:icon="@drawable/love"
android:label="LÖVE for Android"
android:usesCleartextTraffic="true"
tools:node="replace" >
<activity
android:name="org.love2d.android.GameActivity"
android:configChanges="orientation|screenSize|smallestScreenSize|screenLayout|keyboard|keyboardHidden|navigation"
android:label="LÖVE for Android"
android:launchMode="singleTask"
android:screenOrientation="landscape"
android:resizeableActivity="false"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
<category android:name="tv.ouya.intent.category.GAME" />
</intent-filter>
</activity>
</application>
</manifest>
+1 -1
View File
@@ -3,7 +3,7 @@
android:installLocation="auto" xmlns:android="http://schemas.android.com/apk/res/android"> android:installLocation="auto" xmlns:android="http://schemas.android.com/apk/res/android">
<uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.VIBRATE"/> <uses-permission android:name="android.permission.VIBRATE"/>
<!-- Disabled for PlayStore Build <uses-permission android:name="android.permission.RECORD_AUDIO" /> --> <uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" android:maxSdkVersion="28" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" android:maxSdkVersion="28" />
+2
View File
@@ -0,0 +1,2 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest package="org.love2d.android.executable" xmlns:android="http://schemas.android.com/apk/res/android" />
+8
View File
@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest
package="org.love2d.android.executable"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
>
<uses-permission android:name="android.permission.RECORD_AUDIO" tools:node="remove" />
</manifest>
+20
View File
@@ -13,6 +13,7 @@ android {
compileSdkVersion 28 compileSdkVersion 28
buildToolsVersion "28.0.3" buildToolsVersion "28.0.3"
minSdkVersion 14 minSdkVersion 14
resValue "bool", "embed", "false"
externalNativeBuild { externalNativeBuild {
ndkBuild { ndkBuild {
arguments "-j4" arguments "-j4"
@@ -30,12 +31,31 @@ android {
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
} }
} }
flavorDimensions 'mode'
productFlavors {
normal {
dimension 'mode'
}
playstore {
dimension 'mode'
}
embed {
dimension 'mode'
resValue "bool", "embed", "true"
}
}
sourceSets { sourceSets {
main { main {
java { java {
srcDirs('src/main/java', 'src/jni/SDL2/android-project/app/src/main/java') srcDirs('src/main/java', 'src/jni/SDL2/android-project/app/src/main/java')
} }
} }
embed {
java {
exclude '**/DownloadActivity.java'
exclude '**/DownloadService.java'
}
}
} }
externalNativeBuild { externalNativeBuild {
ndkBuild { ndkBuild {