Commit Graph

105 Commits

Author SHA1 Message Date
林洵锋
f340d207f6
Adjust the position of require File.expand_path (#141521)
On `Podfile`:

```ruby
flutter_application_path = '../flutter_module'
load File.join(flutter_application_path, '.ios', 'Flutter', 'podhelper.rb')

target 'OCProject' do
  # Comment the next line if you don't want to use dynamic frameworks
  use_frameworks!

  # Pods for OCProject
  # install_all_flutter_pods(flutter_application_path)
  # install_flutter_engine_pod(flutter_application_path)
  # install_flutter_application_pod(flutter_application_path)
  install_flutter_plugin_pods(flutter_application_path)

end

post_install do |installer|
  flutter_post_install(installer)
end
```
Encountering the following error after executing `pod install`:

```shell
pod install

[!] Invalid `Podfile` file: undefined method `flutter_relative_path_from_podfile' for #<Pod::Podfile:0x000000010e74c520 @defined_in_file=#<Pathname:/Users/lxf/gitHub/flutter_hybrid_bug/OCProject/Podfile>, @internal_hash={}, @root_target_definitions=[#<Pod::Podfile::TargetDefinition label=Pods>], @current_target_definition=#<Pod::Podfile::TargetDefinition label=Pods>>

  relative = flutter_relative_path_from_podfile(export_script_directory)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^.

 #  from /Users/lxf/gitHub/flutter_hybrid_bug/OCProject/Podfile:17
 #  -------------------------------------------
 #    # install_flutter_plugin_pods(flutter_application_path)
 >    install_flutter_application_pod(flutter_application_path)
 #
 #  -------------------------------------------
```

The `flutter_relative_path_from_podfile` method is in `flutter_tools/bin/podhelper.rb`, but now `flutter_tools/bin/podhelper.rb` is only required in `install_all_flutter_pods` in `podhelper.rb.tmpl`.

Sometimes we only need to use the `install_flutter_plugin_pods` method in podhelper.rb. For example, using `Shorebird` in an iOS hybird app scenario, we need to build `Flutter.xcframework` and `App.xcframework` and embed them into the iOS native project. In order to avoid unnecessary conflicts, use `install_flutter_plugin_pods` method to install Flutter plugin pods.

[Shorebird - Code Push In Hybrid Apps](https://docs.shorebird.dev/guides/hybrid-app/ios)

So I adjust the position of `require File.expand_path(File.join('packages', 'flutter_tools', 'bin', 'podhelper'), flutter_root)`.
2024-01-21 06:18:26 +00:00
Jenn Magder
076cb8a328
Migrate Xcode projects last version checks to Xcode 15.1 (#140256)
Change the following in the `flutter create` templates.  I didn't make any auto-migrations for existing apps because none seem that critical:
1. Turn on `ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS` in iOS and macOS.
1. Turn on `BuildIndependentTargetsInParallel` in macOS template.  https://github.com/flutter/flutter/pull/125827/files#r1181817619 
1. Turn on `DEAD_CODE_STRIPPING` in macOS template. 
1. Set `ENABLE_USER_SCRIPT_SANDBOXING=NO` in iOS and macOS template.  `flutter` scripts don't work with this on.  This might require a migration in the future to explicitly turn this one off. However at least for now if the setting isn't present it defaults to `NO`.

Add migration for `LastUpgradeVersion` so users won't see these validation issues in Xcode.

Run migrator on all the example apps.  A few aren't Flutter apps so I edited them in Xcode.

Fixes https://github.com/flutter/flutter/issues/140253
See also https://github.com/flutter/flutter/issues/125817 and https://github.com/flutter/flutter/pull/90304.
2024-01-03 23:05:46 +00:00
Jenn Magder
b08fc60024
Set template and migrate apps to iOS 12 minimum (#140823)
Reland https://github.com/flutter/flutter/pull/140478 with `ios_content_validation_test` test fix.
```
[ios_content_validation_test] Process terminated with exit code 0.
Task result:
{
  "success": true,
  "data": null,
  "detailFiles": [],
  "benchmarkScoreKeys": [],
  "reason": "success"
}

```

__________

1. Change templates to `IPHONEOS_DEPLOYMENT_TARGET`, `MinimumOSVersion`, and Podfile `platform :ios` to 12.0.
2. Add migrator for Podfile part to migrate `platform :ios, '11.0'` -> `platform :ios, '12.0'`
3. Compile with `-miphoneos-version-min=12.0`
4. Run the migrator on all example apps and integration tests.

See also https://github.com/flutter/flutter/pull/62902 and https://github.com/flutter/flutter/pull/85174 and https://github.com/flutter/flutter/pull/101963

Fixes https://github.com/flutter/flutter/issues/136060
2024-01-03 00:47:40 +00:00
auto-submit[bot]
bd634f3298
Reverts "Set template and migrate apps to iOS 12 minimum" (#140822)
Reverts flutter/flutter#140478
Initiated by: loic-sharma
This change reverts the following previous change:
Original Description:
1. Change templates to `IPHONEOS_DEPLOYMENT_TARGET`, `MinimumOSVersion`, and Podfile `platform :ios` to 12.0.
2. Add migrator for Podfile part to migrate `platform :ios, '11.0'` -> `platform :ios, '12.0'`
3. Compile with `-miphoneos-version-min=12.0`
4. Run the migrator on all example apps and integration tests.

See also https://github.com/flutter/flutter/pull/62902 and https://github.com/flutter/flutter/pull/85174 and https://github.com/flutter/flutter/pull/101963

Fixes https://github.com/flutter/flutter/issues/136060
2024-01-02 20:49:19 +00:00
Jenn Magder
acdbcadb9e
Set template and migrate apps to iOS 12 minimum (#140478)
1. Change templates to `IPHONEOS_DEPLOYMENT_TARGET`, `MinimumOSVersion`, and Podfile `platform :ios` to 12.0.
2. Add migrator for Podfile part to migrate `platform :ios, '11.0'` -> `platform :ios, '12.0'`
3. Compile with `-miphoneos-version-min=12.0`
4. Run the migrator on all example apps and integration tests.

See also https://github.com/flutter/flutter/pull/62902 and https://github.com/flutter/flutter/pull/85174 and https://github.com/flutter/flutter/pull/101963

Fixes https://github.com/flutter/flutter/issues/136060
2024-01-02 19:42:13 +00:00
Chris Yang
fadcaee842
iOS info.plist template: make UIViewControllerBasedStatusBar to be true (#128970)
Now that we support UIViewControllerBasedStatusBar by default (after engine roll: c7167765d7), we should make this value to be true.

Part of https://github.com/flutter/flutter/issues/128969
2023-06-20 18:11:18 +00:00
Jenn Magder
1861ac470a
Migrate Xcode projects last version checks to Xcode 14.3 (#125827)
1. Add iOS and macOS migration to mark "last upgraded" Xcode version to 14.3 to prevent `Update to recommended settings` warning.
2. Update iOS and macOS templates to same.
3. Update iOS template to set `BuildIndependentTargetsInParallel` to YES as suggested.  I didn't add a migration for this since it seems like a minor optimization and I don't think it's worth a potentially botched/corrupted migration.
4. Run all example/integration test project to see migrator work.
5. Add some missing test projects to the build shard since I noticed they were missing and I had to build those manually outside `SHARD=build_tests`.

Fixes https://github.com/flutter/flutter/issues/125817
See https://github.com/flutter/flutter/pull/90304 for Xcode 13 example.
2023-05-02 00:06:33 +00:00
Victoria Ashworth
b4d72752bd
Add Info.plist from build directory as input path to Thin Binary build phase (#118209)
* Add Info.plist from build directory as input path to Thin Binary build phase

* fix directive ordering

* migrate benchmark, integration, and example tests
2023-01-13 13:41:08 -06:00
Jenn Magder
dce82f7e21
Remove deprecated Ruby File.exists? in helper script (#109428) 2022-08-12 20:22:07 +00:00
Jenn Magder
70aaff1217
Set Xcode build script phases to always run (#108331) 2022-07-26 19:20:07 +00:00
Jenn Magder
36be63ba19
Embed Flutter and App frameworks for add-to-app on iOS (#102538) 2022-05-02 10:44:12 -07:00
Jenn Magder
1756ccc541
Set template and migrate apps to iOS 11 minimum (#101963) 2022-04-15 11:34:08 -07:00
Jenn Magder
5b58d5c58f
Exclude armv7 from iOS add-to-app plugins (#101943) 2022-04-14 18:24:08 -07:00
Callum Moffat
30a501801a
Support trackpad gestures in framework (#89944)
* Implement trackpad gestures in framework

* Touch and Pan/Zoom pointers have separate IDs now

* Handle trackpad pointer device type

* Respect supportedDevices for pan/zoom events

* Update after rebase

* Fix check failures

* Avoid error with very short drags

* Address feedback

* Refactor drag event handler

* Address more feedback

* Add some missing punctuation
2022-04-12 19:47:01 -07:00
Chris Yang
291b286417
[tool] Add CADisableMinimumFrameDurationOnPhone to iOS templates (#94509) 2022-03-09 14:15:20 -08:00
Jenn Magder
57d5222876
Include -isysroot -arch and -miphoneos-version-min when creating dummy module App.framework (#97689) 2022-02-04 14:50:11 -08:00
stuartmorgan
2df7dca858
Fully support Dart-only mobile and macOS plugins (#96183) 2022-01-13 08:30:22 -08:00
Jenn Magder
aa4ef4cb2a
Revert "[flutter_tools] [iOS] Change UIViewControllerBasedStatusBarAppearance to true to fix rotation status bar disappear in portrait" (#95747) 2021-12-23 14:19:18 -08:00
Mouad Debbar
30b6b9e7f0
Revert "Update Xcode toolsVersion encoded in generated Main.storyboard (#94084)" (#94164)
This reverts commit 6a3ea7eb83.
2021-11-24 10:12:53 -05:00
Jenn Magder
6a3ea7eb83
Update Xcode toolsVersion encoded in generated Main.storyboard (#94084) 2021-11-23 17:38:02 -08:00
Wu Zhong
365d76c527
[flutter_tools] [iOS] Change UIViewControllerBasedStatusBarAppearance to true to fix rotation status bar disappear in portrait (#92647) 2021-10-28 19:58:01 -07:00
Chris Yang
42eb903200
[flutter_tools] iOS: display name defaults to the Title Case of flutter project name. (#91529) 2021-10-20 10:33:02 -07:00
Jenn Magder
91d1e3ed8b
Default new project to the ios-signing-cert development team (#90021) 2021-10-07 10:23:02 -07:00
Jenn Magder
9b1ed4639d
Update flutter create templates for Xcode 13 (#88074) 2021-08-12 11:37:04 -07:00
Jenn Magder
81aeb33ce3
Increase Flutter framework minimum iOS version to 9.0 (#86840) 2021-07-22 13:21:05 -07:00
Jenn Magder
0de6bd41ba
Migrate iOS app deployment target from 8.0 to 9.0 (#85174) 2021-06-24 10:21:05 -07:00
Tim Sneath
57a565c706
Clean up podspec template (#84662) 2021-06-15 18:44:02 -07:00
Jenn Magder
7711c1ef8f
Suggest precache instead of build when engine artifacts are missing (#75351) 2021-02-03 13:14:38 -08:00
Jenn Magder
b29a6bc56b
Use SDK podhelper in add-to-app module Podfile (#73072) 2021-01-14 10:15:24 -08:00
Jenn Magder
4d5db88998
Default add-to-app xcode_backend script to be verbose (#73110) 2021-01-11 10:29:26 -08:00
Jenn Magder
45d71e25ab
Build iOS apps using Swift Packages (#73508) 2021-01-07 15:59:09 -08:00
Jenn Magder
74d58105d1
Revert "Build iOS apps using Swift Packages (#72761)" (#73437)
This reverts commit 28db5a0fae.
2021-01-06 15:04:16 -08:00
Jenn Magder
6891928a1f
Optionally include CocoaPods xcconfig (#73112) 2021-01-06 13:55:23 -08:00
Jenn Magder
28db5a0fae
Build iOS apps using Swift Packages (#72761) 2021-01-06 13:54:53 -08:00
Jenn Magder
61d4524527
Stop using Xcode build settings in materialized Info.plist (#71870) 2020-12-07 15:32:47 -08:00
Jenn Magder
d4150d3f6d
Adopt Flutter.xcframework in tool (#71495) 2020-12-04 13:57:11 -08:00
Jenn Magder
9bbc2177ec
Move Flutter.podspec to add-to-app project template (#71103) 2020-11-24 10:16:09 -08:00
Jenn Magder
e6bd95bc5c
Use module Profile scheme when profiling (#70896) 2020-11-23 14:10:58 -08:00
Jenn Magder
2529e358b6
Move Flutter.framework to build directory instead of ios/Flutter (#70224) 2020-11-17 10:09:29 -08:00
Jenn Magder
b84fb90400
Remove unused host_app_editable_cocoapods template files (#70518) 2020-11-16 14:33:43 -08:00
Jenn Magder
58ba70a6e7
Remove add-to-app Xcode build phase input files (#69846) 2020-11-04 23:26:59 -08:00
Jenn Magder
f63d56e455
App.framework must support iOS 8 for older Flutter projects (#68729)
* App.framework must support iOS 8 for older Flutter projects

* Fix test
2020-10-22 13:50:54 -07:00
Jenn Magder
d81691d0f4
Revert "Build iOS apps using Swift Packages (#68361)" (#68546)
This reverts commit dd9323bdfb.
2020-10-19 17:57:32 -07:00
Jenn Magder
dd9323bdfb
Build iOS apps using Swift Packages (#68361) 2020-10-19 15:47:04 -07:00
Jenn Magder
6b2ef0df7b
Fix App.framework path in Podfile (#63412) 2020-08-12 13:36:12 -07:00
Jenn Magder
0aafdf9aa9
Change minimum iOS version from 8.0 to 9.0 (#62902) 2020-08-06 13:46:15 -07:00
Jenn Magder
e8e5de44ec
Parse .flutter-plugins-dependencies for add-to-app iOS modules (#61269) 2020-07-28 10:16:09 -07:00
Jenn Magder
0486cebd29
Make module run script names unique (#60228) 2020-06-24 16:52:01 -07:00
Jenn Magder
023532d991
Revert "Build iOS apps using Swift Packages (#59009)" (#59025)
This reverts commit 43e28084fc.
2020-06-08 15:45:10 -07:00
Jenn Magder
43e28084fc
Build iOS apps using Swift Packages (#59009) 2020-06-08 13:53:01 -07:00