From 0a42e27ce33fd1aa49ea1228a2ff6d06b9bc5024 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?lollipopkit=F0=9F=8F=B3=EF=B8=8F=E2=80=8D=E2=9A=A7?=
=?UTF-8?q?=EF=B8=8F?= <10864310+lollipopkit@users.noreply.github.com>
Date: Mon, 23 Mar 2026 01:05:26 +0800
Subject: [PATCH] chore: rm app_links
---
ios/Flutter/AppFrameworkInfo.plist | 2 -
ios/Podfile.lock | 6 --
ios/Runner.xcodeproj/project.pbxproj | 15 +++++
.../generate_missing_framework_dsyms.sh | 58 +++++++++++++++++++
linux/flutter/generated_plugin_registrant.cc | 4 --
linux/flutter/generated_plugins.cmake | 1 -
macos/Flutter/GeneratedPluginRegistrant.swift | 2 -
macos/Podfile.lock | 6 --
packages/fl_lib | 2 +-
pubspec.lock | 41 -------------
pubspec.yaml | 8 ---
.../flutter/generated_plugin_registrant.cc | 3 -
windows/flutter/generated_plugins.cmake | 1 -
13 files changed, 74 insertions(+), 75 deletions(-)
create mode 100644 ios/scripts/generate_missing_framework_dsyms.sh
diff --git a/ios/Flutter/AppFrameworkInfo.plist b/ios/Flutter/AppFrameworkInfo.plist
index 1dc6cf76..391a902b 100644
--- a/ios/Flutter/AppFrameworkInfo.plist
+++ b/ios/Flutter/AppFrameworkInfo.plist
@@ -20,7 +20,5 @@
????
CFBundleVersion
1.0
- MinimumOSVersion
- 13.0
diff --git a/ios/Podfile.lock b/ios/Podfile.lock
index e4343e6e..4953411a 100644
--- a/ios/Podfile.lock
+++ b/ios/Podfile.lock
@@ -1,6 +1,4 @@
PODS:
- - app_links (6.4.1):
- - Flutter
- camera_avfoundation (0.0.1):
- Flutter
- file_picker (0.0.1):
@@ -32,7 +30,6 @@ PODS:
- Flutter
DEPENDENCIES:
- - app_links (from `.symlinks/plugins/app_links/ios`)
- camera_avfoundation (from `.symlinks/plugins/camera_avfoundation/ios`)
- file_picker (from `.symlinks/plugins/file_picker/ios`)
- Flutter (from `Flutter`)
@@ -49,8 +46,6 @@ DEPENDENCIES:
- watch_connectivity (from `.symlinks/plugins/watch_connectivity/ios`)
EXTERNAL SOURCES:
- app_links:
- :path: ".symlinks/plugins/app_links/ios"
camera_avfoundation:
:path: ".symlinks/plugins/camera_avfoundation/ios"
file_picker:
@@ -81,7 +76,6 @@ EXTERNAL SOURCES:
:path: ".symlinks/plugins/watch_connectivity/ios"
SPEC CHECKSUMS:
- app_links: 3dbc685f76b1693c66a6d9dd1e9ab6f73d97dc0a
camera_avfoundation: 5675ca25298b6f81fa0a325188e7df62cc217741
file_picker: fb04e739ae6239a76ce1f571863a196a922c87d4
Flutter: cabc95a1d2626b1b06e7179b784ebcf0c0cde467
diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj
index 970c1252..acb424e8 100644
--- a/ios/Runner.xcodeproj/project.pbxproj
+++ b/ios/Runner.xcodeproj/project.pbxproj
@@ -338,6 +338,7 @@
E33A3E4A2A626DD0009744AB /* Embed Foundation Extensions */,
E39515D52AB5AD64003602C1 /* Embed Watch Content */,
3B06AD1E1E4923F5004D2608 /* Thin Binary */,
+ F3A15C782F6E1D8B00A1C001 /* Generate Missing Framework dSYMs */,
);
buildRules = (
);
@@ -504,6 +505,20 @@
shellPath = /bin/sh;
shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build";
};
+ F3A15C782F6E1D8B00A1C001 /* Generate Missing Framework dSYMs */ = {
+ isa = PBXShellScriptBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ );
+ inputPaths = (
+ );
+ name = "Generate Missing Framework dSYMs";
+ outputPaths = (
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ shellPath = /bin/sh;
+ shellScript = "/bin/sh \"${PROJECT_DIR}/scripts/generate_missing_framework_dsyms.sh\"\n";
+ };
AA0A1FF2F3246F84EB0D91F2 /* [CP] Embed Pods Frameworks */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
diff --git a/ios/scripts/generate_missing_framework_dsyms.sh b/ios/scripts/generate_missing_framework_dsyms.sh
new file mode 100644
index 00000000..7a3eb20e
--- /dev/null
+++ b/ios/scripts/generate_missing_framework_dsyms.sh
@@ -0,0 +1,58 @@
+#!/bin/sh
+
+set -eu
+
+if [ "${ACTION:-}" != "install" ] && [ -z "${ARCHIVE_PATH:-}" ]; then
+ exit 0
+fi
+
+APP_BUNDLE_PATH="${TARGET_BUILD_DIR}/${WRAPPER_NAME}"
+
+if [ ! -d "${APP_BUNDLE_PATH}" ]; then
+ exit 0
+fi
+
+DSYM_ROOT="${DWARF_DSYM_FOLDER_PATH:-}"
+if [ -n "${ARCHIVE_PATH:-}" ]; then
+ DSYM_ROOT="${ARCHIVE_PATH}/dSYMs"
+fi
+
+if [ -z "${DSYM_ROOT}" ]; then
+ exit 0
+fi
+
+mkdir -p "${DSYM_ROOT}"
+
+uuid_list() {
+ xcrun dwarfdump --uuid "$1" 2>/dev/null | awk '{ print $2 }' | sort
+}
+
+find "${APP_BUNDLE_PATH}" -type d -path '*/Frameworks/*.framework' -print0 | while IFS= read -r -d '' framework_path; do
+ info_plist="${framework_path}/Info.plist"
+ binary_name=''
+ if [ -f "${info_plist}" ]; then
+ binary_name=$(/usr/libexec/PlistBuddy -c 'Print :CFBundleExecutable' "${info_plist}" 2>/dev/null || true)
+ fi
+ if [ -z "${binary_name}" ]; then
+ binary_name="$(basename "${framework_path}" .framework)"
+ fi
+
+ binary_path="${framework_path}/${binary_name}"
+ if [ ! -f "${binary_path}" ]; then
+ continue
+ fi
+
+ dsym_path="${DSYM_ROOT}/$(basename "${framework_path}").dSYM"
+ dsym_binary_path="${dsym_path}/Contents/Resources/DWARF/${binary_name}"
+ binary_uuids="$(uuid_list "${binary_path}")"
+
+ if [ -n "${binary_uuids}" ] && [ -f "${dsym_binary_path}" ]; then
+ dsym_uuids="$(uuid_list "${dsym_binary_path}")"
+ if [ "${binary_uuids}" = "${dsym_uuids}" ]; then
+ continue
+ fi
+ fi
+
+ rm -rf "${dsym_path}"
+ xcrun dsymutil "${binary_path}" -o "${dsym_path}"
+done
diff --git a/linux/flutter/generated_plugin_registrant.cc b/linux/flutter/generated_plugin_registrant.cc
index adc190d4..820c3a7e 100644
--- a/linux/flutter/generated_plugin_registrant.cc
+++ b/linux/flutter/generated_plugin_registrant.cc
@@ -8,7 +8,6 @@
#include
#include
-#include
#include
#include
#include
@@ -20,9 +19,6 @@ void fl_register_plugins(FlPluginRegistry* registry) {
g_autoptr(FlPluginRegistrar) flutter_secure_storage_linux_registrar =
fl_plugin_registry_get_registrar_for_plugin(registry, "FlutterSecureStorageLinuxPlugin");
flutter_secure_storage_linux_plugin_register_with_registrar(flutter_secure_storage_linux_registrar);
- g_autoptr(FlPluginRegistrar) gtk_registrar =
- fl_plugin_registry_get_registrar_for_plugin(registry, "GtkPlugin");
- gtk_plugin_register_with_registrar(gtk_registrar);
g_autoptr(FlPluginRegistrar) screen_retriever_linux_registrar =
fl_plugin_registry_get_registrar_for_plugin(registry, "ScreenRetrieverLinuxPlugin");
screen_retriever_linux_plugin_register_with_registrar(screen_retriever_linux_registrar);
diff --git a/linux/flutter/generated_plugins.cmake b/linux/flutter/generated_plugins.cmake
index 32f9bfe9..d3790845 100644
--- a/linux/flutter/generated_plugins.cmake
+++ b/linux/flutter/generated_plugins.cmake
@@ -5,7 +5,6 @@
list(APPEND FLUTTER_PLUGIN_LIST
dynamic_color
flutter_secure_storage_linux
- gtk
screen_retriever_linux
url_launcher_linux
window_manager
diff --git a/macos/Flutter/GeneratedPluginRegistrant.swift b/macos/Flutter/GeneratedPluginRegistrant.swift
index 1058d345..6abf80cb 100644
--- a/macos/Flutter/GeneratedPluginRegistrant.swift
+++ b/macos/Flutter/GeneratedPluginRegistrant.swift
@@ -5,7 +5,6 @@
import FlutterMacOS
import Foundation
-import app_links
import dynamic_color
import file_picker
import flutter_secure_storage_macos
@@ -20,7 +19,6 @@ import wakelock_plus
import window_manager
func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) {
- AppLinksMacosPlugin.register(with: registry.registrar(forPlugin: "AppLinksMacosPlugin"))
DynamicColorPlugin.register(with: registry.registrar(forPlugin: "DynamicColorPlugin"))
FilePickerPlugin.register(with: registry.registrar(forPlugin: "FilePickerPlugin"))
FlutterSecureStoragePlugin.register(with: registry.registrar(forPlugin: "FlutterSecureStoragePlugin"))
diff --git a/macos/Podfile.lock b/macos/Podfile.lock
index 9720a1a9..82ebbb1d 100644
--- a/macos/Podfile.lock
+++ b/macos/Podfile.lock
@@ -1,6 +1,4 @@
PODS:
- - app_links (6.4.1):
- - FlutterMacOS
- dynamic_color (0.0.2):
- FlutterMacOS
- file_picker (0.0.1):
@@ -30,7 +28,6 @@ PODS:
- FlutterMacOS
DEPENDENCIES:
- - app_links (from `Flutter/ephemeral/.symlinks/plugins/app_links/macos`)
- dynamic_color (from `Flutter/ephemeral/.symlinks/plugins/dynamic_color/macos`)
- file_picker (from `Flutter/ephemeral/.symlinks/plugins/file_picker/macos`)
- flutter_secure_storage_macos (from `Flutter/ephemeral/.symlinks/plugins/flutter_secure_storage_macos/macos`)
@@ -46,8 +43,6 @@ DEPENDENCIES:
- window_manager (from `Flutter/ephemeral/.symlinks/plugins/window_manager/macos`)
EXTERNAL SOURCES:
- app_links:
- :path: Flutter/ephemeral/.symlinks/plugins/app_links/macos
dynamic_color:
:path: Flutter/ephemeral/.symlinks/plugins/dynamic_color/macos
file_picker:
@@ -76,7 +71,6 @@ EXTERNAL SOURCES:
:path: Flutter/ephemeral/.symlinks/plugins/window_manager/macos
SPEC CHECKSUMS:
- app_links: 05a6ec2341985eb05e9f97dc63f5837c39895c3f
dynamic_color: cb7c2a300ee67ed3bd96c3e852df3af0300bf610
file_picker: 7584aae6fa07a041af2b36a2655122d42f578c1a
flutter_secure_storage_macos: 7f45e30f838cf2659862a4e4e3ee1c347c2b3b54
diff --git a/packages/fl_lib b/packages/fl_lib
index ffb12c86..61d62d23 160000
--- a/packages/fl_lib
+++ b/packages/fl_lib
@@ -1 +1 @@
-Subproject commit ffb12c8672b57546736a6b35951a868449b85cb3
+Subproject commit 61d62d23a885d8dc1b36bae32d7c4572125e1f92
diff --git a/pubspec.lock b/pubspec.lock
index 5b901d1d..113284d3 100644
--- a/pubspec.lock
+++ b/pubspec.lock
@@ -49,38 +49,6 @@ packages:
url: "https://pub.dev"
source: hosted
version: "2.0.3"
- app_links:
- dependency: transitive
- description:
- name: app_links
- sha256: "5f88447519add627fe1cbcab4fd1da3d4fed15b9baf29f28b22535c95ecee3e8"
- url: "https://pub.dev"
- source: hosted
- version: "6.4.1"
- app_links_linux:
- dependency: transitive
- description:
- name: app_links_linux
- sha256: f5f7173a78609f3dfd4c2ff2c95bd559ab43c80a87dc6a095921d96c05688c81
- url: "https://pub.dev"
- source: hosted
- version: "1.0.3"
- app_links_platform_interface:
- dependency: transitive
- description:
- name: app_links_platform_interface
- sha256: "05f5379577c513b534a29ddea68176a4d4802c46180ee8e2e966257158772a3f"
- url: "https://pub.dev"
- source: hosted
- version: "2.0.2"
- app_links_web:
- dependency: transitive
- description:
- name: app_links_web
- sha256: af060ed76183f9e2b87510a9480e56a5352b6c249778d07bd2c95fc35632a555
- url: "https://pub.dev"
- source: hosted
- version: "1.0.4"
archive:
dependency: transitive
description:
@@ -706,15 +674,6 @@ packages:
url: "https://pub.dev"
source: hosted
version: "2.3.2"
- gtk:
- dependency: "direct overridden"
- description:
- path: "."
- ref: "v0.0.36"
- resolved-ref: c62c45857fb4f60ca3d6b5fc7fa2a26df8ba9fa7
- url: "https://github.com/lollipopkit/gtk.dart"
- source: git
- version: "2.1.0"
highlight:
dependency: "direct main"
description:
diff --git a/pubspec.yaml b/pubspec.yaml
index 90b9111d..bc71ea34 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -56,14 +56,6 @@ dependencies:
fl_lib:
path: packages/fl_lib
-dependency_overrides:
- # webdav_client_plus:
- # path: ../webdav_client
- gtk: # TODO: remove it after fixed in upstream
- git:
- url: https://github.com/lollipopkit/gtk.dart
- ref: v0.0.36
-
dev_dependencies:
analyzer: ^8.1.1
flutter_native_splash: ^2.1.6
diff --git a/windows/flutter/generated_plugin_registrant.cc b/windows/flutter/generated_plugin_registrant.cc
index a271dfc9..61c38279 100644
--- a/windows/flutter/generated_plugin_registrant.cc
+++ b/windows/flutter/generated_plugin_registrant.cc
@@ -6,7 +6,6 @@
#include "generated_plugin_registrant.h"
-#include
#include
#include
#include
@@ -16,8 +15,6 @@
#include
void RegisterPlugins(flutter::PluginRegistry* registry) {
- AppLinksPluginCApiRegisterWithRegistrar(
- registry->GetRegistrarForPlugin("AppLinksPluginCApi"));
DynamicColorPluginCApiRegisterWithRegistrar(
registry->GetRegistrarForPlugin("DynamicColorPluginCApi"));
FlutterSecureStorageWindowsPluginRegisterWithRegistrar(
diff --git a/windows/flutter/generated_plugins.cmake b/windows/flutter/generated_plugins.cmake
index 1fa81ed8..421b2378 100644
--- a/windows/flutter/generated_plugins.cmake
+++ b/windows/flutter/generated_plugins.cmake
@@ -3,7 +3,6 @@
#
list(APPEND FLUTTER_PLUGIN_LIST
- app_links
dynamic_color
flutter_secure_storage_windows
local_auth_windows