Skip to content
This repository has been archived by the owner on Jun 13, 2024. It is now read-only.

Commit

Permalink
Maintainance (#934)
Browse files Browse the repository at this point in the history
## Description

`flutter create` maintenance-based tasks
- Android
  - now a lot simpler
  - supports AGP 8.0 and above
  - tested in release mode on a device
- iOS/macOS
  - new boilerplate test files
  - renamed icons, removed extra
- web
  - renamed icons, added missing, fixed icons in manifest
  - fixes #916

- updated pubspec
  • Loading branch information
guidezpl authored Apr 26, 2023
1 parent 37ff3cc commit dd7148e
Show file tree
Hide file tree
Showing 50 changed files with 806 additions and 413 deletions.
28 changes: 20 additions & 8 deletions .metadata
Original file line number Diff line number Diff line change
Expand Up @@ -4,23 +4,35 @@
# This file should be version controlled.

version:
revision: 328545e5afcd2e4fb7c665af6b63627a6318aade
channel: master
revision: f6b9c4da23f88394ae33a1915da47274a2d705d7
channel: main

project_type: app

# Tracks metadata for the flutter migrate command
migration:
platforms:
- platform: root
create_revision: 328545e5afcd2e4fb7c665af6b63627a6318aade
base_revision: 328545e5afcd2e4fb7c665af6b63627a6318aade
create_revision: f6b9c4da23f88394ae33a1915da47274a2d705d7
base_revision: f6b9c4da23f88394ae33a1915da47274a2d705d7
- platform: android
create_revision: 328545e5afcd2e4fb7c665af6b63627a6318aade
base_revision: 328545e5afcd2e4fb7c665af6b63627a6318aade
create_revision: f6b9c4da23f88394ae33a1915da47274a2d705d7
base_revision: f6b9c4da23f88394ae33a1915da47274a2d705d7
- platform: ios
create_revision: f6b9c4da23f88394ae33a1915da47274a2d705d7
base_revision: f6b9c4da23f88394ae33a1915da47274a2d705d7
- platform: linux
create_revision: f6b9c4da23f88394ae33a1915da47274a2d705d7
base_revision: f6b9c4da23f88394ae33a1915da47274a2d705d7
- platform: macos
create_revision: f6b9c4da23f88394ae33a1915da47274a2d705d7
base_revision: f6b9c4da23f88394ae33a1915da47274a2d705d7
- platform: web
create_revision: f6b9c4da23f88394ae33a1915da47274a2d705d7
base_revision: f6b9c4da23f88394ae33a1915da47274a2d705d7
- platform: windows
create_revision: 2aa348b9407e96ffe4eca8e8f213c7984afad3f7
base_revision: 2aa348b9407e96ffe4eca8e8f213c7984afad3f7
create_revision: f6b9c4da23f88394ae33a1915da47274a2d705d7
base_revision: f6b9c4da23f88394ae33a1915da47274a2d705d7

# User provided section

Expand Down
24 changes: 9 additions & 15 deletions android/app/build.gradle
Original file line number Diff line number Diff line change
@@ -1,3 +1,9 @@
plugins {
id "com.android.application"
id "kotlin-android"
id "dev.flutter.flutter-gradle-plugin"
}

def localProperties = new Properties()
def localPropertiesFile = rootProject.file('local.properties')
if (localPropertiesFile.exists()) {
Expand All @@ -6,11 +12,6 @@ if (localPropertiesFile.exists()) {
}
}

def flutterRoot = localProperties.getProperty('flutter.sdk')
if (flutterRoot == null) {
throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.")
}

def flutterVersionCode = localProperties.getProperty('flutter.versionCode')
if (flutterVersionCode == null) {
flutterVersionCode = '1'
Expand All @@ -21,14 +22,6 @@ if (flutterVersionName == null) {
flutterVersionName = '1.0'
}

apply plugin: 'com.android.application'
// START: FlutterFire Configuration
apply plugin: 'com.google.gms.google-services'
apply plugin: 'com.google.firebase.firebase-perf'
apply plugin: 'com.google.firebase.crashlytics'
// END: FlutterFire Configuration
apply plugin: 'kotlin-android'
apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"

def keystoreProperties = new Properties()
def keystorePropertiesFile = rootProject.file('key.properties')
Expand All @@ -37,6 +30,7 @@ if (keystorePropertiesFile.exists()) {
}

android {
namespace "io.flutter.demo.gallery"
compileSdkVersion flutter.compileSdkVersion
ndkVersion flutter.ndkVersion

Expand Down Expand Up @@ -68,11 +62,11 @@ android {
storeFile keystoreProperties['storeFile'] ? file(keystoreProperties['storeFile']) : null
storePassword keystoreProperties['storePassword']
}

}

buildTypes {
release {
// Uncomment to run flutter run --release locally
// Uncomment to run flutter build apk or flutter run --release locally
// signingConfig signingConfigs.debug

signingConfig signingConfigs.release
Expand Down
3 changes: 1 addition & 2 deletions android/app/src/debug/AndroidManifest.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="io.flutter.demo.gallery">
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
<!-- The INTERNET permission is required for development. Specifically,
the Flutter tool needs it to communicate with the running application
to allow setting breakpoints, to provide hot reload, etc.
Expand Down
3 changes: 1 addition & 2 deletions android/app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="io.flutter.demo.gallery">
<manifest xmlns:android="http://schemas.android.com/apk/res/android">

<!-- io.flutter.app.FlutterApplication is an android.app.Application that
calls FlutterMain.startInitialization(this); in its onCreate method.
Expand Down
3 changes: 1 addition & 2 deletions android/app/src/profile/AndroidManifest.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="io.flutter.demo.gallery">
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
<!-- The INTERNET permission is required for development. Specifically,
the Flutter tool needs it to communicate with the running application
to allow setting breakpoints, to provide hot reload, etc.
Expand Down
4 changes: 2 additions & 2 deletions android/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ buildscript {
}

dependencies {
classpath 'com.android.tools.build:gradle:7.2.0'
classpath 'com.android.tools.build:gradle:7.4.2'
// START: FlutterFire Configuration
classpath 'com.google.gms:google-services:4.3.10'
classpath 'com.google.firebase:perf-plugin:1.4.1'
Expand Down Expand Up @@ -41,6 +41,6 @@ subprojects {
}
}

task clean(type: Delete) {
tasks.register("clean", Delete) {
delete rootProject.buildDir
}
24 changes: 5 additions & 19 deletions android/crane/build.gradle
Original file line number Diff line number Diff line change
@@ -1,24 +1,13 @@
def localProperties = new Properties()
def localPropertiesFile = rootProject.file('local.properties')
if (localPropertiesFile.exists()) {
localPropertiesFile.withReader('UTF-8') { reader ->
localProperties.load(reader)
}
}

def flutterVersionCode = localProperties.getProperty('flutter.versionCode')
if (flutterVersionCode == null) {
flutterVersionCode = '1'
}

def flutterVersionName = localProperties.getProperty('flutter.versionName')
if (flutterVersionName == null) {
flutterVersionName = '1.0'
def keystoreProperties = new Properties()
def keystorePropertiesFile = rootProject.file('key.properties')
if (keystorePropertiesFile.exists()) {
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
}

apply plugin: "com.android.dynamic-feature"

android {
namespace "com.example.gallery.crane"
compileSdkVersion 31

sourceSets {
Expand All @@ -30,9 +19,6 @@ android {

defaultConfig {
minSdkVersion 21
targetSdkVersion 30
versionCode flutterVersionCode.toInteger()
versionName flutterVersionName
}

compileOptions {
Expand Down
3 changes: 1 addition & 2 deletions android/crane/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:dist="http://schemas.android.com/apk/distribution"
package="com.example.gallery.crane">
xmlns:dist="http://schemas.android.com/apk/distribution">

<dist:module
dist:instant="false"
Expand Down
25 changes: 17 additions & 8 deletions android/settings.gradle
Original file line number Diff line number Diff line change
@@ -1,11 +1,20 @@
include ':app', ':crane'
pluginManagement {
def flutterSdkPath = {
def properties = new Properties()
file("local.properties").withInputStream { properties.load(it) }
def flutterSdkPath = properties.getProperty("flutter.sdk")
assert flutterSdkPath != null, "flutter.sdk not set in local.properties"
return flutterSdkPath
}
settings.ext.flutterSdkPath = flutterSdkPath()

def localPropertiesFile = new File(rootProject.projectDir, "local.properties")
def properties = new Properties()
includeBuild("${settings.ext.flutterSdkPath}/packages/flutter_tools/gradle")

assert localPropertiesFile.exists()
localPropertiesFile.withReader("UTF-8") { reader -> properties.load(reader) }
plugins {
id "dev.flutter.flutter-gradle-plugin" version "1.0.0" apply false
}
}

def flutterSdkPath = properties.getProperty("flutter.sdk")
assert flutterSdkPath != null, "flutter.sdk not set in local.properties"
apply from: "$flutterSdkPath/packages/flutter_tools/gradle/app_plugin_loader.gradle"
include ":app", ":crane"

apply from: "${settings.ext.flutterSdkPath}/packages/flutter_tools/gradle/app_plugin_loader.gradle"
3 changes: 1 addition & 2 deletions ios/.gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
**/dgph
*.mode1v3
*.mode2v3
*.moved-aside
Expand All @@ -12,7 +13,6 @@ Icon?
**/Pods/
**/.symlinks/
profile
dgph
xcuserdata
**/.generated/
Flutter/App.framework
Expand All @@ -26,7 +26,6 @@ Flutter/flutter_assets/
Flutter/flutter_export_environment.sh
ServiceDefinitions.json
Runner/GeneratedPluginRegistrant.*
XCBuildData

# Exceptions to above rules.
!default.mode1v3
Expand Down
40 changes: 20 additions & 20 deletions ios/Flutter/AppFrameworkInfo.plist
Original file line number Diff line number Diff line change
Expand Up @@ -2,25 +2,25 @@
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>$(DEVELOPMENT_LANGUAGE)</string>
<key>CFBundleExecutable</key>
<string>App</string>
<key>CFBundleIdentifier</key>
<string>io.flutter.flutter.app</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>App</string>
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>CFBundleShortVersionString</key>
<string>1.0</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>1.0</string>
<key>MinimumOSVersion</key>
<string>9.0</string>
<key>CFBundleDevelopmentRegion</key>
<string>en</string>
<key>CFBundleExecutable</key>
<string>App</string>
<key>CFBundleIdentifier</key>
<string>io.flutter.flutter.app</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>App</string>
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>CFBundleShortVersionString</key>
<string>1.0</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>1.0</string>
<key>MinimumOSVersion</key>
<string>11.0</string>
</dict>
</plist>
5 changes: 4 additions & 1 deletion ios/Podfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Uncomment this line to define a global platform for your project
platform :ios, '11.0'
# platform :ios, '11.0'

# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
ENV['COCOAPODS_DISABLE_STATS'] = 'true'
Expand Down Expand Up @@ -32,6 +32,9 @@ target 'Runner' do
use_modular_headers!

flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__))
target 'RunnerTests' do
inherit! :search_paths
end
end

post_install do |installer|
Expand Down
Loading

0 comments on commit dd7148e

Please sign in to comment.