Unverified Commit 6b2ef0df authored by Jenn Magder's avatar Jenn Magder Committed by GitHub

Fix App.framework path in Podfile (#63412)

parent 2384376f
...@@ -191,6 +191,16 @@ Future<void> main() async { ...@@ -191,6 +191,16 @@ Future<void> main() async {
// Android-only, no embedded framework. // Android-only, no embedded framework.
checkDirectoryNotExists(path.join(ephemeralIOSHostApp.path, 'Frameworks', 'android_alarm_manager.framework')); checkDirectoryNotExists(path.join(ephemeralIOSHostApp.path, 'Frameworks', 'android_alarm_manager.framework'));
section('Clean and pub get module');
await inDirectory(projectDir, () async {
await flutter('clean');
});
await inDirectory(projectDir, () async {
await flutter('pub', options: <String>['get']);
});
section('Add to existing iOS Objective-C app'); section('Add to existing iOS Objective-C app');
final Directory objectiveCHostApp = Directory(path.join(tempDir.path, 'hello_host_app')); final Directory objectiveCHostApp = Directory(path.join(tempDir.path, 'hello_host_app'));
...@@ -241,6 +251,23 @@ Future<void> main() async { ...@@ -241,6 +251,23 @@ Future<void> main() async {
return TaskResult.failure('Failed to build existing Objective-C app .app'); return TaskResult.failure('Failed to build existing Objective-C app .app');
} }
checkFileExists(path.join(
objectiveCBuildDirectory.path,
'Host.app',
'Frameworks',
'Flutter.framework',
'Flutter',
));
checkFileExists(path.join(
objectiveCBuildDirectory.path,
'Host.app',
'Frameworks',
'App.framework',
'flutter_assets',
'isolate_snapshot_data',
));
final String objectiveCAnalyticsOutput = objectiveCAnalyticsOutputFile.readAsStringSync(); final String objectiveCAnalyticsOutput = objectiveCAnalyticsOutputFile.readAsStringSync();
if (!objectiveCAnalyticsOutput.contains('cd24: ios') if (!objectiveCAnalyticsOutput.contains('cd24: ios')
|| !objectiveCAnalyticsOutput.contains('cd25: true') || !objectiveCAnalyticsOutput.contains('cd25: true')
......
...@@ -96,7 +96,8 @@ end ...@@ -96,7 +96,8 @@ end
# Optional, defaults to two levels up from the directory of this script. # Optional, defaults to two levels up from the directory of this script.
# MyApp/my_flutter/.ios/Flutter/../.. # MyApp/my_flutter/.ios/Flutter/../..
def install_flutter_application_pod(flutter_application_path) def install_flutter_application_pod(flutter_application_path)
app_framework_dir = File.expand_path('App.framework', File.join('..', __FILE__)) current_directory_pathname = Pathname.new File.expand_path('..', __FILE__)
app_framework_dir = File.expand_path('App.framework', current_directory_pathname.to_path)
app_framework_dylib = File.join(app_framework_dir, 'App') app_framework_dylib = File.join(app_framework_dir, 'App')
if !File.exist?(app_framework_dylib) if !File.exist?(app_framework_dylib)
# Fake an App.framework to have something to link against if the xcode backend script has not run yet. # Fake an App.framework to have something to link against if the xcode backend script has not run yet.
...@@ -108,7 +109,7 @@ def install_flutter_application_pod(flutter_application_path) ...@@ -108,7 +109,7 @@ def install_flutter_application_pod(flutter_application_path)
# Keep pod and script phase paths relative so they can be checked into source control. # Keep pod and script phase paths relative so they can be checked into source control.
# Process will be run from project directory. # Process will be run from project directory.
current_directory_pathname = Pathname.new File.expand_path('..', __FILE__)
# defined_in_file is set by CocoaPods and is a Pathname to the Podfile. # defined_in_file is set by CocoaPods and is a Pathname to the Podfile.
project_directory_pathname = defined_in_file.dirname project_directory_pathname = defined_in_file.dirname
relative = current_directory_pathname.relative_path_from project_directory_pathname relative = current_directory_pathname.relative_path_from project_directory_pathname
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment