Forum für diejenigen, die für Android programmieren
Anonymous
16 KB Speicherseitengröße im Flattermodus
Post
by Anonymous » 13 Jan 2026, 03:49
Ich versuche, eine App im Playstore hochzuladen. Aber zuerst baue ich leere Projektfluten auf. Meine Frage ist... ist das sicher genug für eine Speicherseitengröße von 16 KB? Hier ist android/app/build.gradle.kts
Code: Select all
plugins {
id("com.android.application")
id("kotlin-android")
// The Flutter Gradle Plugin must be applied after the Android and Kotlin Gradle plugins.
id("dev.flutter.flutter-gradle-plugin")
}
android {
namespace = "com.example.flutter_application_1"
compileSdk = flutter.compileSdkVersion
ndkVersion = "28.2.13676358"
compileOptions {
sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11
}
kotlinOptions {
jvmTarget = JavaVersion.VERSION_11.toString()
}
defaultConfig {
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
applicationId = "com.example.flutter_application_1"
// You can update the following values to match your application needs.
// For more information, see: https://flutter.dev/to/review-gradle-config.
minSdk = flutter.minSdkVersion
targetSdk = flutter.targetSdkVersion
versionCode = flutter.versionCode
versionName = flutter.versionName
}
buildTypes {
release {
// TODO: Add your own signing config for the release build.
// Signing with the debug keys for now, so `flutter run --release` works.
signingConfig = signingConfigs.getByName("debug")
packaging {
jniLibs {
useLegacyPackaging = true
}
}
}
}
packagingOptions {
jniLibs {
useLegacyPackaging = true
}
}
}
flutter {
source = "../.."
}
hier ist android/build.gradle.kts
Code: Select all
allprojects {
repositories {
google()
mavenCentral()
}
}
val newBuildDir: Directory = rootProject.layout.buildDirectory.dir("../../build").get()
rootProject.layout.buildDirectory.value(newBuildDir)
subprojects {
val newSubprojectBuildDir: Directory = newBuildDir.dir(project.name)
project.layout.buildDirectory.value(newSubprojectBuildDir)
}
subprojects {
project.evaluationDependsOn(":app")
}
tasks.register("clean") {
delete(rootProject.layout.buildDirectory)
}
und hier ist das Yaml
Code: Select all
name: flutter_application_1
description: "A new Flutter project."
publish_to: 'none'
version: 1.0.0+1
environment:
sdk: ^3.8.1
dependencies:
flutter:
sdk: flutter
dev_dependencies:
flutter_test:
sdk: flutter
flutter:
uses-material-design: true
und hier ist das Ergebnis, wenn ich Folgendes tue:
Code: Select all
find lib -name "*.so" -exec sh -c '
echo "==== $1 ====";
/usr/local/Cellar/llvm/21.1.8/bin/llvm-readelf -l "$1" | grep LOAD
' sh {} \;
Das Ergebnis ist
Code: Select all
==== lib/armeabi-v7a/libflutter.so ====
LOAD 0x000000 0x00000000 0x00000000 0x2a459c 0x2a459c R 0x10000
LOAD 0x2a4600 0x002b4600 0x002b4600 0x4c92f0 0x4c92f0 R E 0x10000
LOAD 0x76d8f0 0x0078d8f0 0x0078d8f0 0x35068 0x35710 RW 0x10000
LOAD 0x7a2958 0x007d2958 0x007d2958 0x00f30 0x0a324 RW 0x10000
==== lib/armeabi-v7a/libapp.so ====
LOAD 0x000000 0x00000000 0x00000000 0x144e82 0x144e82 R 0x4000
LOAD 0x148000 0x00148000 0x00148000 0x1edb00 0x1edb00 R E 0x4000
LOAD 0x338000 0x00338000 0x00338000 0x00040 0x00040 RW 0x4000
==== lib/arm64-v8a/libflutter.so ====
LOAD 0x000000 0x0000000000000000 0x0000000000000000 0x47ea5c 0x47ea5c R 0x10000
LOAD 0x47ea80 0x000000000048ea80 0x000000000048ea80 0x5da560 0x5da560 R E 0x10000
LOAD 0xa58fe0 0x0000000000a78fe0 0x0000000000a78fe0 0x066030 0x067020 RW 0x10000
LOAD 0xabf010 0x0000000000aef010 0x0000000000aef010 0x001b50 0x013058 RW 0x10000
==== lib/arm64-v8a/libapp.so ====
LOAD 0x000000 0x0000000000000000 0x0000000000000000 0x10ff82 0x10ff82 R 0x10000
LOAD 0x110000 0x0000000000110000 0x0000000000110000 0x1c7870 0x1c7870 R E 0x10000
LOAD 0x2e0000 0x00000000002e0000 0x00000000002e0000 0x000080 0x000080 RW 0x10000
==== lib/x86_64/libflutter.so ====
LOAD 0x000000 0x0000000000000000 0x0000000000000000 0x49b0a0 0x49b0a0 R 0x10000
LOAD 0x49b0c0 0x00000000004ab0c0 0x00000000004ab0c0 0x6cc100 0x6cc100 R E 0x10000
LOAD 0xb671c0 0x0000000000b871c0 0x0000000000b871c0 0x064d60 0x064e40 RW 0x10000
LOAD 0xbcbf20 0x0000000000bfbf20 0x0000000000bfbf20 0x002c28 0x0147b8 RW 0x10000
==== lib/x86_64/libapp.so ====
LOAD 0x000000 0x0000000000000000 0x0000000000000000 0x10f482 0x10f482 R 0x10000
LOAD 0x110000 0x0000000000110000 0x0000000000110000 0x1d2610 0x1d2610 R E 0x10000
LOAD 0x2f0000 0x00000000002f0000 0x00000000002f0000 0x000080 0x000080 RW 0x10000
1768272598
Anonymous
Ich versuche, eine App im Playstore hochzuladen. Aber zuerst baue ich leere Projektfluten auf. Meine Frage ist... ist das sicher genug für eine Speicherseitengröße von 16 KB? Hier ist android/app/build.gradle.kts [code]plugins { id("com.android.application") id("kotlin-android") // The Flutter Gradle Plugin must be applied after the Android and Kotlin Gradle plugins. id("dev.flutter.flutter-gradle-plugin") } android { namespace = "com.example.flutter_application_1" compileSdk = flutter.compileSdkVersion ndkVersion = "28.2.13676358" compileOptions { sourceCompatibility = JavaVersion.VERSION_11 targetCompatibility = JavaVersion.VERSION_11 } kotlinOptions { jvmTarget = JavaVersion.VERSION_11.toString() } defaultConfig { // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). applicationId = "com.example.flutter_application_1" // You can update the following values to match your application needs. // For more information, see: https://flutter.dev/to/review-gradle-config. minSdk = flutter.minSdkVersion targetSdk = flutter.targetSdkVersion versionCode = flutter.versionCode versionName = flutter.versionName } buildTypes { release { // TODO: Add your own signing config for the release build. // Signing with the debug keys for now, so `flutter run --release` works. signingConfig = signingConfigs.getByName("debug") packaging { jniLibs { useLegacyPackaging = true } } } } packagingOptions { jniLibs { useLegacyPackaging = true } } } flutter { source = "../.." } [/code] hier ist android/build.gradle.kts [code]allprojects { repositories { google() mavenCentral() } } val newBuildDir: Directory = rootProject.layout.buildDirectory.dir("../../build").get() rootProject.layout.buildDirectory.value(newBuildDir) subprojects { val newSubprojectBuildDir: Directory = newBuildDir.dir(project.name) project.layout.buildDirectory.value(newSubprojectBuildDir) } subprojects { project.evaluationDependsOn(":app") } tasks.register("clean") { delete(rootProject.layout.buildDirectory) } [/code] und hier ist das Yaml [code]name: flutter_application_1 description: "A new Flutter project." publish_to: 'none' version: 1.0.0+1 environment: sdk: ^3.8.1 dependencies: flutter: sdk: flutter dev_dependencies: flutter_test: sdk: flutter flutter: uses-material-design: true [/code] und hier ist das Ergebnis, wenn ich Folgendes tue: [code]find lib -name "*.so" -exec sh -c ' echo "==== $1 ===="; /usr/local/Cellar/llvm/21.1.8/bin/llvm-readelf -l "$1" | grep LOAD ' sh {} \; [/code] Das Ergebnis ist [code]==== lib/armeabi-v7a/libflutter.so ==== LOAD 0x000000 0x00000000 0x00000000 0x2a459c 0x2a459c R 0x10000 LOAD 0x2a4600 0x002b4600 0x002b4600 0x4c92f0 0x4c92f0 R E 0x10000 LOAD 0x76d8f0 0x0078d8f0 0x0078d8f0 0x35068 0x35710 RW 0x10000 LOAD 0x7a2958 0x007d2958 0x007d2958 0x00f30 0x0a324 RW 0x10000 ==== lib/armeabi-v7a/libapp.so ==== LOAD 0x000000 0x00000000 0x00000000 0x144e82 0x144e82 R 0x4000 LOAD 0x148000 0x00148000 0x00148000 0x1edb00 0x1edb00 R E 0x4000 LOAD 0x338000 0x00338000 0x00338000 0x00040 0x00040 RW 0x4000 ==== lib/arm64-v8a/libflutter.so ==== LOAD 0x000000 0x0000000000000000 0x0000000000000000 0x47ea5c 0x47ea5c R 0x10000 LOAD 0x47ea80 0x000000000048ea80 0x000000000048ea80 0x5da560 0x5da560 R E 0x10000 LOAD 0xa58fe0 0x0000000000a78fe0 0x0000000000a78fe0 0x066030 0x067020 RW 0x10000 LOAD 0xabf010 0x0000000000aef010 0x0000000000aef010 0x001b50 0x013058 RW 0x10000 ==== lib/arm64-v8a/libapp.so ==== LOAD 0x000000 0x0000000000000000 0x0000000000000000 0x10ff82 0x10ff82 R 0x10000 LOAD 0x110000 0x0000000000110000 0x0000000000110000 0x1c7870 0x1c7870 R E 0x10000 LOAD 0x2e0000 0x00000000002e0000 0x00000000002e0000 0x000080 0x000080 RW 0x10000 ==== lib/x86_64/libflutter.so ==== LOAD 0x000000 0x0000000000000000 0x0000000000000000 0x49b0a0 0x49b0a0 R 0x10000 LOAD 0x49b0c0 0x00000000004ab0c0 0x00000000004ab0c0 0x6cc100 0x6cc100 R E 0x10000 LOAD 0xb671c0 0x0000000000b871c0 0x0000000000b871c0 0x064d60 0x064e40 RW 0x10000 LOAD 0xbcbf20 0x0000000000bfbf20 0x0000000000bfbf20 0x002c28 0x0147b8 RW 0x10000 ==== lib/x86_64/libapp.so ==== LOAD 0x000000 0x0000000000000000 0x0000000000000000 0x10f482 0x10f482 R 0x10000 LOAD 0x110000 0x0000000000110000 0x0000000000110000 0x1d2610 0x1d2610 R E 0x10000 LOAD 0x2f0000 0x00000000002f0000 0x00000000002f0000 0x000080 0x000080 RW 0x10000 [/code]
0 Replies
23 Views
Last post by Guest
19 Jan 2025, 19:28
0 Replies
31 Views
Last post by Guest
19 Jan 2025, 19:28
0 Replies
24 Views
Last post by Anonymous
22 Sep 2025, 21:36
0 Replies
14 Views
Last post by Anonymous
04 Dec 2025, 23:04
0 Replies
1 Views
Last post by Anonymous
05 Jan 2026, 00:01