creating android project files
This commit is contained in:
0
android/app/CMakeLists.txt
Normal file
0
android/app/CMakeLists.txt
Normal file
67
android/app/build.gradle.kts
Normal file
67
android/app/build.gradle.kts
Normal file
@@ -0,0 +1,67 @@
|
|||||||
|
plugins {
|
||||||
|
id("com.android.application")
|
||||||
|
}
|
||||||
|
|
||||||
|
android {
|
||||||
|
namespace = "com.critterfolio.app"
|
||||||
|
compileSdk = 34
|
||||||
|
ndkVersion = "26.3.11579264"
|
||||||
|
|
||||||
|
defaultConfig {
|
||||||
|
applicationId = "com.critterfolio.app"
|
||||||
|
minSdk = 24
|
||||||
|
targetSdk = 34
|
||||||
|
versionCode = 1
|
||||||
|
versionName = "0.1.0"
|
||||||
|
|
||||||
|
ndk {
|
||||||
|
abiFilters += listOf("arm64-v8a")
|
||||||
|
}
|
||||||
|
|
||||||
|
externalNativeBuild {
|
||||||
|
cmake {
|
||||||
|
arguments += "-DANDROID_STL=c++_shared"
|
||||||
|
cppFlags += "-std=c++17"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
buildFeatures {
|
||||||
|
prefab = true
|
||||||
|
}
|
||||||
|
|
||||||
|
externalNativeBuild {
|
||||||
|
cmake {
|
||||||
|
path = file("CMakeLists.txt")
|
||||||
|
version = "3.22.1"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
sourceSets {
|
||||||
|
getByName("main") {
|
||||||
|
assets.srcDirs("../../assets")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
buildTypes {
|
||||||
|
release {
|
||||||
|
isMinifyEnabled = false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
compileOptions {
|
||||||
|
sourceCompatibility = JavaVersion.VERSION_17
|
||||||
|
targetCompatibility = JavaVersion.VERSION_17
|
||||||
|
}
|
||||||
|
|
||||||
|
packaging {
|
||||||
|
jniLibs {
|
||||||
|
useLegacyPackaging = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
dependencies {
|
||||||
|
implementation(files("libs/SDL3-3.4.14.aar"))
|
||||||
|
implementation(files("libs/SDL3_image-3.4.4.aar"))
|
||||||
|
}
|
||||||
BIN
android/app/libs/SDL3-3.4.14.aar
Normal file
BIN
android/app/libs/SDL3-3.4.14.aar
Normal file
Binary file not shown.
BIN
android/app/libs/SDL3_image-3.4.4.aar
Normal file
BIN
android/app/libs/SDL3_image-3.4.4.aar
Normal file
Binary file not shown.
25
android/app/src/main/AndroidManifest.xml
Normal file
25
android/app/src/main/AndroidManifest.xml
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
|
|
||||||
|
<uses-feature android:glEsVersion="0x00030000" android:required="true" />
|
||||||
|
<uses-permission android:name="android.permission.INTERNET" />
|
||||||
|
|
||||||
|
<application
|
||||||
|
android:allowBackup="true"
|
||||||
|
android:label="Critterfolio"
|
||||||
|
android:hasCode="true">
|
||||||
|
|
||||||
|
<activity
|
||||||
|
android:name="com.critterfolio.app.MainActivity"
|
||||||
|
android:label="Critterfolio"
|
||||||
|
android:configChanges="orientation|screenSize|keyboardHidden"
|
||||||
|
android:exported="true"
|
||||||
|
android:screenOrientation="fullSensor">
|
||||||
|
|
||||||
|
<intent-filter>
|
||||||
|
<action android:name="android.intent.action.MAIN" />
|
||||||
|
<category android:name="android.intent.category.LAUNCHER" />
|
||||||
|
</intent-filter>
|
||||||
|
</activity>
|
||||||
|
</application>
|
||||||
|
</manifest>
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
package com.critterfolio.app;
|
||||||
|
|
||||||
|
import org.libsdl.app.SDLActivity;
|
||||||
|
|
||||||
|
public class MainActivity extends SDLActivity {
|
||||||
|
@Override
|
||||||
|
protected String[] getLibraries() {
|
||||||
|
return new String[] {
|
||||||
|
"SDL3",
|
||||||
|
"critterfolio"
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
3
android/build.gradle.kts
Normal file
3
android/build.gradle.kts
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
plugins {
|
||||||
|
id("com.android.application") version "8.5.2" apply false
|
||||||
|
}
|
||||||
2
android/gradle.properties
Normal file
2
android/gradle.properties
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
org.gradle.jvmargs=-Xmx2048m
|
||||||
|
android.useAndroidX=true
|
||||||
17
android/settings.gradle.kts
Normal file
17
android/settings.gradle.kts
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
pluginManagement {
|
||||||
|
repositories {
|
||||||
|
google()
|
||||||
|
mavenCentral()
|
||||||
|
gradlePluginPortal()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
dependencyResolutionManagement {
|
||||||
|
repositories {
|
||||||
|
google()
|
||||||
|
mavenCentral()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
rootProject.name = "critterfolio"
|
||||||
|
include(":app")
|
||||||
38
flake.nix
38
flake.nix
@@ -9,7 +9,13 @@
|
|||||||
outputs = { self, nixpkgs, utils }:
|
outputs = { self, nixpkgs, utils }:
|
||||||
utils.lib.eachDefaultSystem (system:
|
utils.lib.eachDefaultSystem (system:
|
||||||
let
|
let
|
||||||
pkgs = import nixpkgs { inherit system; };
|
pkgs = import nixpkgs {
|
||||||
|
inherit system;
|
||||||
|
config = {
|
||||||
|
allowUnfree = true;
|
||||||
|
android_sdk.accept_license = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
rmlui = pkgs.stdenv.mkDerivation rec {
|
rmlui = pkgs.stdenv.mkDerivation rec {
|
||||||
pname = "rmlui";
|
pname = "rmlui";
|
||||||
@@ -66,10 +72,31 @@
|
|||||||
sqlitecpp
|
sqlitecpp
|
||||||
toml11
|
toml11
|
||||||
];
|
];
|
||||||
|
|
||||||
|
ndkVersion = "26.3.11579264";
|
||||||
|
|
||||||
|
androidComposition = pkgs.androidenv.composeAndroidPackages {
|
||||||
|
platformVersions = [ "34" ];
|
||||||
|
buildToolsVersions = [ "34.0.0" ];
|
||||||
|
includeNDK = true;
|
||||||
|
ndkVersions = [ ndkVersion ];
|
||||||
|
abiVersions = [ "arm64-v8a" ];
|
||||||
|
includeEmulator = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
androidSdkRoot = "${androidComposition.androidsdk}/libexec/android-sdk";
|
||||||
|
androidNdkRoot = "${androidSdkRoot}/ndk/${ndkVersion}";
|
||||||
|
|
||||||
|
androidDeps = [
|
||||||
|
androidComposition.androidsdk
|
||||||
|
pkgs.gradle
|
||||||
|
pkgs.jdk17
|
||||||
|
pkgs.ninja
|
||||||
|
];
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
devShells.default = pkgs.mkShell {
|
devShells.default = pkgs.mkShell {
|
||||||
nativeBuildInputs = buildDeps;
|
nativeBuildInputs = buildDeps ++ androidDeps;
|
||||||
buildInputs = runtimeDeps;
|
buildInputs = runtimeDeps;
|
||||||
|
|
||||||
shellHook = ''
|
shellHook = ''
|
||||||
@@ -77,7 +104,12 @@
|
|||||||
export LIBRARY_PATH="${pkgs.libGL}/lib:${rmlui}/lib"
|
export LIBRARY_PATH="${pkgs.libGL}/lib:${rmlui}/lib"
|
||||||
export LD_LIBRARY_PATH="$LIBRARY_PATH:$LD_LIBRARY_PATH"
|
export LD_LIBRARY_PATH="$LIBRARY_PATH:$LD_LIBRARY_PATH"
|
||||||
|
|
||||||
echo "Env ready"
|
export ANDROID_HOME="${androidSdkRoot}"
|
||||||
|
export ANDROID_SDK_ROOT="${androidSdkRoot}"
|
||||||
|
export ANDROID_NDK_HOME="${androidNdkRoot}"
|
||||||
|
export ANDROID_NDK_ROOT="${androidNdkRoot}"
|
||||||
|
|
||||||
|
echo "Env ready (desktop + Android NDK ${ndkVersion}, arm64-v8a)"
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user