Fastlane instructives for tool publishing the Gallery (#14347)
* first round fastlane working on Android * clean up and start ios * Partial iOS * Got a fastfile that works on iOS * Finalize Android push instructions * Finalize instructions for iOS * Extra cleanup and optipng * Disable readme autogen and add a default readme
This commit is contained in:
parent
5ccd5a1e75
commit
82ddabd32a
@ -57,7 +57,7 @@ TaskFunction createHelloWorldMemoryTest() {
|
|||||||
TaskFunction createGalleryNavigationMemoryTest() {
|
TaskFunction createGalleryNavigationMemoryTest() {
|
||||||
return new MemoryTest(
|
return new MemoryTest(
|
||||||
'${flutterDirectory.path}/examples/flutter_gallery',
|
'${flutterDirectory.path}/examples/flutter_gallery',
|
||||||
'io.flutter.examples.gallery',
|
'io.flutter.demo.gallery',
|
||||||
testTarget: 'test_driver/memory_nav.dart',
|
testTarget: 'test_driver/memory_nav.dart',
|
||||||
).run;
|
).run;
|
||||||
}
|
}
|
||||||
@ -65,8 +65,8 @@ TaskFunction createGalleryNavigationMemoryTest() {
|
|||||||
TaskFunction createGalleryBackButtonMemoryTest() {
|
TaskFunction createGalleryBackButtonMemoryTest() {
|
||||||
return new AndroidBackButtonMemoryTest(
|
return new AndroidBackButtonMemoryTest(
|
||||||
'${flutterDirectory.path}/examples/flutter_gallery',
|
'${flutterDirectory.path}/examples/flutter_gallery',
|
||||||
'io.flutter.examples.gallery',
|
'io.flutter.demo.gallery',
|
||||||
'io.flutter.examples.gallery.MainActivity',
|
'io.flutter.demo.gallery.MainActivity',
|
||||||
).run;
|
).run;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
3
examples/flutter_gallery/android/Gemfile
Normal file
3
examples/flutter_gallery/android/Gemfile
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
source "https://rubygems.org"
|
||||||
|
|
||||||
|
gem "fastlane"
|
143
examples/flutter_gallery/android/Gemfile.lock
Normal file
143
examples/flutter_gallery/android/Gemfile.lock
Normal file
@ -0,0 +1,143 @@
|
|||||||
|
GEM
|
||||||
|
remote: https://rubygems.org/
|
||||||
|
specs:
|
||||||
|
CFPropertyList (2.3.6)
|
||||||
|
addressable (2.5.2)
|
||||||
|
public_suffix (>= 2.0.2, < 4.0)
|
||||||
|
babosa (1.0.2)
|
||||||
|
claide (1.0.2)
|
||||||
|
colored (1.2)
|
||||||
|
colored2 (3.1.2)
|
||||||
|
commander-fastlane (4.4.5)
|
||||||
|
highline (~> 1.7.2)
|
||||||
|
declarative (0.0.10)
|
||||||
|
declarative-option (0.1.0)
|
||||||
|
domain_name (0.5.20170404)
|
||||||
|
unf (>= 0.0.5, < 1.0.0)
|
||||||
|
dotenv (2.2.1)
|
||||||
|
excon (0.60.0)
|
||||||
|
faraday (0.14.0)
|
||||||
|
multipart-post (>= 1.2, < 3)
|
||||||
|
faraday-cookie_jar (0.0.6)
|
||||||
|
faraday (>= 0.7.4)
|
||||||
|
http-cookie (~> 1.0.0)
|
||||||
|
faraday_middleware (0.12.2)
|
||||||
|
faraday (>= 0.7.4, < 1.0)
|
||||||
|
fastimage (2.1.1)
|
||||||
|
fastlane (2.79.0)
|
||||||
|
CFPropertyList (>= 2.3, < 3.0.0)
|
||||||
|
addressable (>= 2.3, < 3.0.0)
|
||||||
|
babosa (>= 1.0.2, < 2.0.0)
|
||||||
|
bundler (>= 1.12.0, < 2.0.0)
|
||||||
|
colored
|
||||||
|
commander-fastlane (>= 4.4.5, < 5.0.0)
|
||||||
|
dotenv (>= 2.1.1, < 3.0.0)
|
||||||
|
excon (>= 0.45.0, < 1.0.0)
|
||||||
|
faraday (~> 0.9)
|
||||||
|
faraday-cookie_jar (~> 0.0.6)
|
||||||
|
faraday_middleware (~> 0.9)
|
||||||
|
fastimage (>= 2.1.0, < 3.0.0)
|
||||||
|
gh_inspector (>= 1.0.1, < 2.0.0)
|
||||||
|
google-api-client (>= 0.13.1, < 0.14.0)
|
||||||
|
highline (>= 1.7.2, < 2.0.0)
|
||||||
|
json (< 3.0.0)
|
||||||
|
mini_magick (~> 4.5.1)
|
||||||
|
multi_json
|
||||||
|
multi_xml (~> 0.5)
|
||||||
|
multipart-post (~> 2.0.0)
|
||||||
|
plist (>= 3.1.0, < 4.0.0)
|
||||||
|
public_suffix (~> 2.0.0)
|
||||||
|
rubyzip (>= 1.1.0, < 2.0.0)
|
||||||
|
security (= 0.1.3)
|
||||||
|
slack-notifier (>= 2.0.0, < 3.0.0)
|
||||||
|
terminal-notifier (>= 1.6.2, < 2.0.0)
|
||||||
|
terminal-table (>= 1.4.5, < 2.0.0)
|
||||||
|
tty-screen (>= 0.6.3, < 1.0.0)
|
||||||
|
tty-spinner (>= 0.8.0, < 1.0.0)
|
||||||
|
word_wrap (~> 1.0.0)
|
||||||
|
xcodeproj (>= 1.5.2, < 2.0.0)
|
||||||
|
xcpretty (>= 0.2.4, < 1.0.0)
|
||||||
|
xcpretty-travis-formatter (>= 0.0.3)
|
||||||
|
gh_inspector (1.0.3)
|
||||||
|
google-api-client (0.13.6)
|
||||||
|
addressable (~> 2.5, >= 2.5.1)
|
||||||
|
googleauth (~> 0.5)
|
||||||
|
httpclient (>= 2.8.1, < 3.0)
|
||||||
|
mime-types (~> 3.0)
|
||||||
|
representable (~> 3.0)
|
||||||
|
retriable (>= 2.0, < 4.0)
|
||||||
|
googleauth (0.6.2)
|
||||||
|
faraday (~> 0.12)
|
||||||
|
jwt (>= 1.4, < 3.0)
|
||||||
|
logging (~> 2.0)
|
||||||
|
memoist (~> 0.12)
|
||||||
|
multi_json (~> 1.11)
|
||||||
|
os (~> 0.9)
|
||||||
|
signet (~> 0.7)
|
||||||
|
highline (1.7.10)
|
||||||
|
http-cookie (1.0.3)
|
||||||
|
domain_name (~> 0.5)
|
||||||
|
httpclient (2.8.3)
|
||||||
|
json (2.1.0)
|
||||||
|
jwt (2.1.0)
|
||||||
|
little-plugger (1.1.4)
|
||||||
|
logging (2.2.2)
|
||||||
|
little-plugger (~> 1.1)
|
||||||
|
multi_json (~> 1.10)
|
||||||
|
memoist (0.16.0)
|
||||||
|
mime-types (3.1)
|
||||||
|
mime-types-data (~> 3.2015)
|
||||||
|
mime-types-data (3.2016.0521)
|
||||||
|
mini_magick (4.5.1)
|
||||||
|
multi_json (1.13.1)
|
||||||
|
multi_xml (0.6.0)
|
||||||
|
multipart-post (2.0.0)
|
||||||
|
nanaimo (0.2.3)
|
||||||
|
os (0.9.6)
|
||||||
|
plist (3.4.0)
|
||||||
|
public_suffix (2.0.5)
|
||||||
|
representable (3.0.4)
|
||||||
|
declarative (< 0.1.0)
|
||||||
|
declarative-option (< 0.2.0)
|
||||||
|
uber (< 0.2.0)
|
||||||
|
retriable (3.1.1)
|
||||||
|
rouge (2.0.7)
|
||||||
|
rubyzip (1.2.1)
|
||||||
|
security (0.1.3)
|
||||||
|
signet (0.8.1)
|
||||||
|
addressable (~> 2.3)
|
||||||
|
faraday (~> 0.9)
|
||||||
|
jwt (>= 1.5, < 3.0)
|
||||||
|
multi_json (~> 1.10)
|
||||||
|
slack-notifier (2.3.2)
|
||||||
|
terminal-notifier (1.8.0)
|
||||||
|
terminal-table (1.8.0)
|
||||||
|
unicode-display_width (~> 1.1, >= 1.1.1)
|
||||||
|
tty-cursor (0.5.0)
|
||||||
|
tty-screen (0.6.4)
|
||||||
|
tty-spinner (0.8.0)
|
||||||
|
tty-cursor (>= 0.5.0)
|
||||||
|
uber (0.1.0)
|
||||||
|
unf (0.1.4)
|
||||||
|
unf_ext
|
||||||
|
unf_ext (0.0.7.4)
|
||||||
|
unicode-display_width (1.3.0)
|
||||||
|
word_wrap (1.0.0)
|
||||||
|
xcodeproj (1.5.4)
|
||||||
|
CFPropertyList (~> 2.3.3)
|
||||||
|
claide (>= 1.0.2, < 2.0)
|
||||||
|
colored2 (~> 3.1)
|
||||||
|
nanaimo (~> 0.2.3)
|
||||||
|
xcpretty (0.2.8)
|
||||||
|
rouge (~> 2.0.7)
|
||||||
|
xcpretty-travis-formatter (1.0.0)
|
||||||
|
xcpretty (~> 0.2, >= 0.0.7)
|
||||||
|
|
||||||
|
PLATFORMS
|
||||||
|
ruby
|
||||||
|
|
||||||
|
DEPENDENCIES
|
||||||
|
fastlane
|
||||||
|
|
||||||
|
BUNDLED WITH
|
||||||
|
1.16.0
|
@ -22,7 +22,7 @@ android {
|
|||||||
}
|
}
|
||||||
|
|
||||||
defaultConfig {
|
defaultConfig {
|
||||||
applicationId "io.flutter.examples.gallery"
|
applicationId "io.flutter.demo.gallery"
|
||||||
minSdkVersion 16
|
minSdkVersion 16
|
||||||
targetSdkVersion 27
|
targetSdkVersion 27
|
||||||
versionCode 1
|
versionCode 1
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
package io.flutter.examples.gallery;
|
package io.flutter.demo.gallery;
|
||||||
|
|
||||||
import android.support.test.filters.LargeTest;
|
import android.support.test.filters.LargeTest;
|
||||||
import android.support.test.rule.ActivityTestRule;
|
import android.support.test.rule.ActivityTestRule;
|
@ -4,7 +4,7 @@
|
|||||||
found in the LICENSE file.
|
found in the LICENSE file.
|
||||||
-->
|
-->
|
||||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
package="io.flutter.examples.gallery">
|
package="io.flutter.demo.gallery">
|
||||||
|
|
||||||
<!-- The INTERNET permission is required for development. Specifically,
|
<!-- The INTERNET permission is required for development. Specifically,
|
||||||
flutter needs it to communicate with the running application
|
flutter needs it to communicate with the running application
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
package io.flutter.examples.gallery;
|
package io.flutter.demo.gallery;
|
||||||
|
|
||||||
import android.os.ConditionVariable;
|
import android.os.ConditionVariable;
|
||||||
import io.flutter.plugin.common.MethodCall;
|
import io.flutter.plugin.common.MethodCall;
|
||||||
@ -18,7 +18,7 @@ public class FlutterGalleryInstrumentation implements MethodCallHandler {
|
|||||||
private volatile boolean testSuccessful;
|
private volatile boolean testSuccessful;
|
||||||
|
|
||||||
FlutterGalleryInstrumentation(FlutterView view) {
|
FlutterGalleryInstrumentation(FlutterView view) {
|
||||||
new MethodChannel(view, "io.flutter.examples.gallery/TestLifecycleListener")
|
new MethodChannel(view, "io.flutter.demo.gallery/TestLifecycleListener")
|
||||||
.setMethodCallHandler(this);
|
.setMethodCallHandler(this);
|
||||||
}
|
}
|
||||||
|
|
@ -2,7 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
package io.flutter.examples.gallery;
|
package io.flutter.demo.gallery;
|
||||||
|
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
|
|
1
examples/flutter_gallery/android/fastlane/Appfile
Normal file
1
examples/flutter_gallery/android/fastlane/Appfile
Normal file
@ -0,0 +1 @@
|
|||||||
|
package_name "io.flutter.demo.gallery"
|
19
examples/flutter_gallery/android/fastlane/Fastfile
Normal file
19
examples/flutter_gallery/android/fastlane/Fastfile
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
# Prevent Fastlane from overwriting README.md
|
||||||
|
skip_docs
|
||||||
|
|
||||||
|
default_platform(:android)
|
||||||
|
|
||||||
|
# This should be run after running
|
||||||
|
# flutter build apk --release
|
||||||
|
# to build the app using the Flutter toolchain.
|
||||||
|
platform :android do
|
||||||
|
desc 'Push the built release APK to alpha'
|
||||||
|
lane :deploy_play_store_alpha do
|
||||||
|
upload_to_play_store(
|
||||||
|
track: 'alpha',
|
||||||
|
apk: '../build/app/outputs/apk/release/app-release.apk',
|
||||||
|
json_key_data: ENV['GOOGLE_DEVELOPER_SERVICE_ACCOUNT_ACTOR_FASTLANE'],
|
||||||
|
skip_upload_screenshots: true
|
||||||
|
)
|
||||||
|
end
|
||||||
|
end
|
10
examples/flutter_gallery/android/fastlane/README.md
Normal file
10
examples/flutter_gallery/android/fastlane/README.md
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
fastlane documentation
|
||||||
|
================
|
||||||
|
This folder contains hermetic scripts to deploy a built APK to the play store.
|
||||||
|
|
||||||
|
This is done using the [fastlane](https://fastlane.tools) tool suite.
|
||||||
|
|
||||||
|
Deployment can be done manually by Googlers by following
|
||||||
|
go/flutter-gallery-publish (internal doc).
|
||||||
|
|
||||||
|
Deployment is automatically done by Travis on branch cuts.
|
@ -0,0 +1,9 @@
|
|||||||
|
(Flutter is alpha technology)
|
||||||
|
|
||||||
|
A gallery of widgets and behaviors, plus demos and vignettes, all built with Flutter. This is a demo of some of the features of Flutter, and some features like accessibility are not yet wired in.
|
||||||
|
|
||||||
|
Flutter is a new project to help developers build high-performance, high-fidelity, mobile apps for iOS and Android from a single codebase.
|
||||||
|
|
||||||
|
This app is open source. Check out the code to see how this app is built: https://github.com/flutter/flutter/tree/master/examples/flutter_gallery
|
||||||
|
|
||||||
|
Visit https://flutter.io to learn more.
|
Binary file not shown.
After Width: | Height: | Size: 3.3 KiB |
@ -0,0 +1 @@
|
|||||||
|
A gallery showcasing apps and widgets build using the Flutter framework
|
@ -0,0 +1 @@
|
|||||||
|
Flutter Gallery
|
3
examples/flutter_gallery/ios/Gemfile
Normal file
3
examples/flutter_gallery/ios/Gemfile
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
source "https://rubygems.org"
|
||||||
|
|
||||||
|
gem "fastlane"
|
143
examples/flutter_gallery/ios/Gemfile.lock
Normal file
143
examples/flutter_gallery/ios/Gemfile.lock
Normal file
@ -0,0 +1,143 @@
|
|||||||
|
GEM
|
||||||
|
remote: https://rubygems.org/
|
||||||
|
specs:
|
||||||
|
CFPropertyList (2.3.6)
|
||||||
|
addressable (2.5.2)
|
||||||
|
public_suffix (>= 2.0.2, < 4.0)
|
||||||
|
babosa (1.0.2)
|
||||||
|
claide (1.0.2)
|
||||||
|
colored (1.2)
|
||||||
|
colored2 (3.1.2)
|
||||||
|
commander-fastlane (4.4.5)
|
||||||
|
highline (~> 1.7.2)
|
||||||
|
declarative (0.0.10)
|
||||||
|
declarative-option (0.1.0)
|
||||||
|
domain_name (0.5.20170404)
|
||||||
|
unf (>= 0.0.5, < 1.0.0)
|
||||||
|
dotenv (2.2.1)
|
||||||
|
excon (0.60.0)
|
||||||
|
faraday (0.14.0)
|
||||||
|
multipart-post (>= 1.2, < 3)
|
||||||
|
faraday-cookie_jar (0.0.6)
|
||||||
|
faraday (>= 0.7.4)
|
||||||
|
http-cookie (~> 1.0.0)
|
||||||
|
faraday_middleware (0.12.2)
|
||||||
|
faraday (>= 0.7.4, < 1.0)
|
||||||
|
fastimage (2.1.1)
|
||||||
|
fastlane (2.79.0)
|
||||||
|
CFPropertyList (>= 2.3, < 3.0.0)
|
||||||
|
addressable (>= 2.3, < 3.0.0)
|
||||||
|
babosa (>= 1.0.2, < 2.0.0)
|
||||||
|
bundler (>= 1.12.0, < 2.0.0)
|
||||||
|
colored
|
||||||
|
commander-fastlane (>= 4.4.5, < 5.0.0)
|
||||||
|
dotenv (>= 2.1.1, < 3.0.0)
|
||||||
|
excon (>= 0.45.0, < 1.0.0)
|
||||||
|
faraday (~> 0.9)
|
||||||
|
faraday-cookie_jar (~> 0.0.6)
|
||||||
|
faraday_middleware (~> 0.9)
|
||||||
|
fastimage (>= 2.1.0, < 3.0.0)
|
||||||
|
gh_inspector (>= 1.0.1, < 2.0.0)
|
||||||
|
google-api-client (>= 0.13.1, < 0.14.0)
|
||||||
|
highline (>= 1.7.2, < 2.0.0)
|
||||||
|
json (< 3.0.0)
|
||||||
|
mini_magick (~> 4.5.1)
|
||||||
|
multi_json
|
||||||
|
multi_xml (~> 0.5)
|
||||||
|
multipart-post (~> 2.0.0)
|
||||||
|
plist (>= 3.1.0, < 4.0.0)
|
||||||
|
public_suffix (~> 2.0.0)
|
||||||
|
rubyzip (>= 1.1.0, < 2.0.0)
|
||||||
|
security (= 0.1.3)
|
||||||
|
slack-notifier (>= 2.0.0, < 3.0.0)
|
||||||
|
terminal-notifier (>= 1.6.2, < 2.0.0)
|
||||||
|
terminal-table (>= 1.4.5, < 2.0.0)
|
||||||
|
tty-screen (>= 0.6.3, < 1.0.0)
|
||||||
|
tty-spinner (>= 0.8.0, < 1.0.0)
|
||||||
|
word_wrap (~> 1.0.0)
|
||||||
|
xcodeproj (>= 1.5.2, < 2.0.0)
|
||||||
|
xcpretty (>= 0.2.4, < 1.0.0)
|
||||||
|
xcpretty-travis-formatter (>= 0.0.3)
|
||||||
|
gh_inspector (1.0.3)
|
||||||
|
google-api-client (0.13.6)
|
||||||
|
addressable (~> 2.5, >= 2.5.1)
|
||||||
|
googleauth (~> 0.5)
|
||||||
|
httpclient (>= 2.8.1, < 3.0)
|
||||||
|
mime-types (~> 3.0)
|
||||||
|
representable (~> 3.0)
|
||||||
|
retriable (>= 2.0, < 4.0)
|
||||||
|
googleauth (0.6.2)
|
||||||
|
faraday (~> 0.12)
|
||||||
|
jwt (>= 1.4, < 3.0)
|
||||||
|
logging (~> 2.0)
|
||||||
|
memoist (~> 0.12)
|
||||||
|
multi_json (~> 1.11)
|
||||||
|
os (~> 0.9)
|
||||||
|
signet (~> 0.7)
|
||||||
|
highline (1.7.10)
|
||||||
|
http-cookie (1.0.3)
|
||||||
|
domain_name (~> 0.5)
|
||||||
|
httpclient (2.8.3)
|
||||||
|
json (2.1.0)
|
||||||
|
jwt (2.1.0)
|
||||||
|
little-plugger (1.1.4)
|
||||||
|
logging (2.2.2)
|
||||||
|
little-plugger (~> 1.1)
|
||||||
|
multi_json (~> 1.10)
|
||||||
|
memoist (0.16.0)
|
||||||
|
mime-types (3.1)
|
||||||
|
mime-types-data (~> 3.2015)
|
||||||
|
mime-types-data (3.2016.0521)
|
||||||
|
mini_magick (4.5.1)
|
||||||
|
multi_json (1.13.1)
|
||||||
|
multi_xml (0.6.0)
|
||||||
|
multipart-post (2.0.0)
|
||||||
|
nanaimo (0.2.3)
|
||||||
|
os (0.9.6)
|
||||||
|
plist (3.4.0)
|
||||||
|
public_suffix (2.0.5)
|
||||||
|
representable (3.0.4)
|
||||||
|
declarative (< 0.1.0)
|
||||||
|
declarative-option (< 0.2.0)
|
||||||
|
uber (< 0.2.0)
|
||||||
|
retriable (3.1.1)
|
||||||
|
rouge (2.0.7)
|
||||||
|
rubyzip (1.2.1)
|
||||||
|
security (0.1.3)
|
||||||
|
signet (0.8.1)
|
||||||
|
addressable (~> 2.3)
|
||||||
|
faraday (~> 0.9)
|
||||||
|
jwt (>= 1.5, < 3.0)
|
||||||
|
multi_json (~> 1.10)
|
||||||
|
slack-notifier (2.3.2)
|
||||||
|
terminal-notifier (1.8.0)
|
||||||
|
terminal-table (1.8.0)
|
||||||
|
unicode-display_width (~> 1.1, >= 1.1.1)
|
||||||
|
tty-cursor (0.5.0)
|
||||||
|
tty-screen (0.6.4)
|
||||||
|
tty-spinner (0.8.0)
|
||||||
|
tty-cursor (>= 0.5.0)
|
||||||
|
uber (0.1.0)
|
||||||
|
unf (0.1.4)
|
||||||
|
unf_ext
|
||||||
|
unf_ext (0.0.7.4)
|
||||||
|
unicode-display_width (1.3.0)
|
||||||
|
word_wrap (1.0.0)
|
||||||
|
xcodeproj (1.5.4)
|
||||||
|
CFPropertyList (~> 2.3.3)
|
||||||
|
claide (>= 1.0.2, < 2.0)
|
||||||
|
colored2 (~> 3.1)
|
||||||
|
nanaimo (~> 0.2.3)
|
||||||
|
xcpretty (0.2.8)
|
||||||
|
rouge (~> 2.0.7)
|
||||||
|
xcpretty-travis-formatter (1.0.0)
|
||||||
|
xcpretty (~> 0.2, >= 0.0.7)
|
||||||
|
|
||||||
|
PLATFORMS
|
||||||
|
ruby
|
||||||
|
|
||||||
|
DEPENDENCIES
|
||||||
|
fastlane
|
||||||
|
|
||||||
|
BUNDLED WITH
|
||||||
|
1.16.0
|
@ -48,6 +48,7 @@ end
|
|||||||
post_install do |installer|
|
post_install do |installer|
|
||||||
installer.pods_project.targets.each do |target|
|
installer.pods_project.targets.each do |target|
|
||||||
target.build_configurations.each do |config|
|
target.build_configurations.each do |config|
|
||||||
|
config.build_settings['PROVISIONING_PROFILE_SPECIFIER'] = ''
|
||||||
config.build_settings['ENABLE_BITCODE'] = 'NO'
|
config.build_settings['ENABLE_BITCODE'] = 'NO'
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
@ -455,7 +455,7 @@
|
|||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
"$(PROJECT_DIR)/Flutter",
|
"$(PROJECT_DIR)/Flutter",
|
||||||
);
|
);
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = com.yourcompany.flutterGallery;
|
PRODUCT_BUNDLE_IDENTIFIER = io.flutter.demo.gallery;
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
};
|
};
|
||||||
name = Debug;
|
name = Debug;
|
||||||
@ -477,7 +477,7 @@
|
|||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
"$(PROJECT_DIR)/Flutter",
|
"$(PROJECT_DIR)/Flutter",
|
||||||
);
|
);
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = com.yourcompany.flutterGallery;
|
PRODUCT_BUNDLE_IDENTIFIER = io.flutter.demo.gallery;
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
};
|
};
|
||||||
name = Release;
|
name = Release;
|
||||||
|
8
examples/flutter_gallery/ios/fastlane/Appfile
Normal file
8
examples/flutter_gallery/ios/fastlane/Appfile
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
app_identifier "io.flutter.demo.gallery" # The bundle identifier of your app
|
||||||
|
apple_id "stores@flutter.io" # Your Apple email address
|
||||||
|
|
||||||
|
itc_team_id "118089806" # iTunes Connect Team ID
|
||||||
|
team_id "S8QB4VV633" # Developer Portal Team ID
|
||||||
|
|
||||||
|
# For more information about the Appfile, see:
|
||||||
|
# https://docs.fastlane.tools/advanced/#appfile
|
47
examples/flutter_gallery/ios/fastlane/Fastfile
Normal file
47
examples/flutter_gallery/ios/fastlane/Fastfile
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
# Prevent Fastlane from overwriting README.md
|
||||||
|
skip_docs
|
||||||
|
|
||||||
|
default_platform(:ios)
|
||||||
|
|
||||||
|
# This should be run after running
|
||||||
|
# flutter build ios --release --no-codesign
|
||||||
|
# to build the app using the Flutter toolchain. This lane is meant to only
|
||||||
|
# rebuild the app by:
|
||||||
|
# 1- Signing using the publishing credentials; and
|
||||||
|
# 2- xcodebuild with archive option
|
||||||
|
platform :ios do
|
||||||
|
desc "Push a new release to TestFlight"
|
||||||
|
lane :build_and_deploy_testflight do
|
||||||
|
# Doesn't do anything when not on Travis.
|
||||||
|
setup_travis
|
||||||
|
|
||||||
|
# Retrieves all the necessary certs and provisioning profiles.
|
||||||
|
sync_code_signing(
|
||||||
|
git_url: ENV["PUBLISHING_MATCH_CERTIFICATE_REPO"],
|
||||||
|
type: "appstore",
|
||||||
|
readonly: true
|
||||||
|
)
|
||||||
|
|
||||||
|
# Modify the Xcode project to use the new team and profile.
|
||||||
|
# It will put the git state to dirty but Travis will be wiped after
|
||||||
|
# then run session.
|
||||||
|
disable_automatic_code_signing
|
||||||
|
update_project_provisioning(
|
||||||
|
xcodeproj: "Runner.xcodeproj",
|
||||||
|
target_filter: "Runner",
|
||||||
|
build_configuration: "Release",
|
||||||
|
profile: ENV["sigh_io.flutter.demo.gallery_appstore_profile-path"],
|
||||||
|
)
|
||||||
|
|
||||||
|
# Build and archive the app again.
|
||||||
|
build_ios_app(
|
||||||
|
workspace: "Runner.xcworkspace",
|
||||||
|
scheme: "Runner",
|
||||||
|
export_method: "app-store",
|
||||||
|
# Verify that the right signing identity is used for publishing.
|
||||||
|
codesigning_identity: "iPhone Distribution: Store Ladd (S8QB4VV633)",
|
||||||
|
)
|
||||||
|
|
||||||
|
upload_to_testflight
|
||||||
|
end
|
||||||
|
end
|
11
examples/flutter_gallery/ios/fastlane/README.md
Normal file
11
examples/flutter_gallery/ios/fastlane/README.md
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
fastlane documentation
|
||||||
|
================
|
||||||
|
This folder contains hermetic scripts to re-build the app using a distribution
|
||||||
|
profile and then deploy to TestFlight.
|
||||||
|
|
||||||
|
This is done using the [fastlane](https://fastlane.tools) tool suite.
|
||||||
|
|
||||||
|
Deployment can be done manually by Googlers by following
|
||||||
|
go/flutter-gallery-publish (internal doc).
|
||||||
|
|
||||||
|
Deployment is automatically done by Travis on branch cuts.
|
@ -13,7 +13,7 @@ import 'package:flutter_test/flutter_test.dart';
|
|||||||
import 'package:flutter_gallery/gallery/app.dart';
|
import 'package:flutter_gallery/gallery/app.dart';
|
||||||
|
|
||||||
/// Reports success or failure to the native code.
|
/// Reports success or failure to the native code.
|
||||||
const MethodChannel _kTestChannel = const MethodChannel('io.flutter.examples.gallery/TestLifecycleListener');
|
const MethodChannel _kTestChannel = const MethodChannel('io.flutter.demo.gallery/TestLifecycleListener');
|
||||||
|
|
||||||
Future<Null> main() async {
|
Future<Null> main() async {
|
||||||
try {
|
try {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user