legacy skia build next to impeller arm64
This commit is contained in:
@@ -147,9 +147,13 @@ jobs:
|
||||
IPTPROXY_SOURCE: ${{ runner.temp }}/IPtProxy
|
||||
run: melos run build-go-runtime --no-select
|
||||
|
||||
- name: Build APK (Alpha)
|
||||
- name: Build APK (Alpha, Impeller)
|
||||
if: steps.build-type.outputs.is_prerelease == 'true'
|
||||
run: melos run build-browser-alpha --no-select
|
||||
run: melos run build-browser-alpha-impeller --no-select
|
||||
|
||||
- name: Build APK (Alpha, Legacy renderer)
|
||||
if: steps.build-type.outputs.is_prerelease == 'true'
|
||||
run: melos run build-browser-alpha-legacy --no-select
|
||||
|
||||
- name: Build APK (Stable)
|
||||
if: steps.build-type.outputs.is_prerelease == 'false'
|
||||
@@ -164,7 +168,7 @@ jobs:
|
||||
if: steps.build-type.outputs.is_prerelease == 'true'
|
||||
uses: ncipollo/release-action@v1.17.0
|
||||
with:
|
||||
artifacts: "apps/weblibre/build/app/outputs/apk/alpha/release/*.apk"
|
||||
artifacts: "apps/weblibre/build/app/outputs/apk/alphaImpeller/release/*.apk,apps/weblibre/build/app/outputs/apk/alphaLegacy/release/*.apk"
|
||||
prerelease: true
|
||||
|
||||
- name: Create github artifact release (Full)
|
||||
|
||||
@@ -43,6 +43,10 @@ android {
|
||||
targetSdk = 37
|
||||
versionCode = flutterVersionCode.toInteger()
|
||||
versionName = flutterVersionName
|
||||
// Whether the Flutter engine renders via Impeller or the legacy Skia
|
||||
// backend. Read by io.flutter.embedding.android.EnableImpeller in
|
||||
// AndroidManifest.xml. Overridden per-flavor below.
|
||||
manifestPlaceholders = [enableImpeller: "true"]
|
||||
}
|
||||
|
||||
flavorDimensions "track"
|
||||
@@ -51,11 +55,32 @@ android {
|
||||
dimension "track"
|
||||
manifestPlaceholders = [appName: "WebLibre"]
|
||||
}
|
||||
alpha {
|
||||
// Same alpha release slot (applicationId/versionName suffix), split into
|
||||
// two variants so Impeller and the legacy Skia renderer can be compared
|
||||
// side by side. The renderer is chosen at Flutter engine startup via a
|
||||
// manifest meta-data flag and cannot be switched at runtime, hence two
|
||||
// separate builds rather than a single toggle.
|
||||
alphaImpeller {
|
||||
dimension "track"
|
||||
applicationIdSuffix ".alpha"
|
||||
versionNameSuffix "-alpha"
|
||||
manifestPlaceholders = [appName: "WebLibre Alpha"]
|
||||
manifestPlaceholders = [appName: "WebLibre Alpha", enableImpeller: "true"]
|
||||
}
|
||||
alphaLegacy {
|
||||
dimension "track"
|
||||
applicationIdSuffix ".alpha"
|
||||
versionNameSuffix "-alpha"
|
||||
manifestPlaceholders = [appName: "WebLibre Alpha (Legacy)", enableImpeller: "false"]
|
||||
}
|
||||
}
|
||||
|
||||
sourceSets {
|
||||
// Both alpha variants share the existing alpha launcher icon/branding.
|
||||
alphaImpeller {
|
||||
res.srcDirs += 'src/alpha/res'
|
||||
}
|
||||
alphaLegacy {
|
||||
res.srcDirs += 'src/alpha/res'
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -271,7 +271,7 @@
|
||||
|
||||
<meta-data
|
||||
android:name="io.flutter.embedding.android.EnableImpeller"
|
||||
android:value="true" />
|
||||
android:value="${enableImpeller}" />
|
||||
|
||||
<!-- HCPP (Hybrid Composition++) is still experimental and mis-maps
|
||||
platform-view touch coordinates when the activity runs in a resized
|
||||
|
||||
+9
-3
@@ -94,9 +94,15 @@ melos:
|
||||
set -e
|
||||
cd apps/weblibre
|
||||
flutter build apk --release --flavor stable --target-platform android-arm,android-arm64 --split-per-abi --no-tree-shake-icons
|
||||
build-browser-alpha:
|
||||
description: Build alpha release APK split per ABI (side-by-side installable with stable)
|
||||
build-browser-alpha-impeller:
|
||||
description: Build arm64 alpha release APK with Impeller enabled (side-by-side installable with stable)
|
||||
run: |
|
||||
set -e
|
||||
cd apps/weblibre
|
||||
flutter build apk --release --flavor alpha --target-platform android-arm,android-arm64 --split-per-abi --no-tree-shake-icons
|
||||
flutter build apk --release --flavor alphaImpeller --target-platform android-arm64 --no-tree-shake-icons
|
||||
build-browser-alpha-legacy:
|
||||
description: Build arm64 alpha release APK with the legacy Skia renderer (side-by-side installable with stable)
|
||||
run: |
|
||||
set -e
|
||||
cd apps/weblibre
|
||||
flutter build apk --release --flavor alphaLegacy --target-platform android-arm64 --no-tree-shake-icons
|
||||
|
||||
Reference in New Issue
Block a user