diff --git a/example/ios/Flutter/ephemeral/flutter_lldb_helper.py b/example/ios/Flutter/ephemeral/flutter_lldb_helper.py new file mode 100644 index 00000000..a88caf99 --- /dev/null +++ b/example/ios/Flutter/ephemeral/flutter_lldb_helper.py @@ -0,0 +1,32 @@ +# +# Generated file, do not edit. +# + +import lldb + +def handle_new_rx_page(frame: lldb.SBFrame, bp_loc, extra_args, intern_dict): + """Intercept NOTIFY_DEBUGGER_ABOUT_RX_PAGES and touch the pages.""" + base = frame.register["x0"].GetValueAsAddress() + page_len = frame.register["x1"].GetValueAsUnsigned() + + # Note: NOTIFY_DEBUGGER_ABOUT_RX_PAGES will check contents of the + # first page to see if handled it correctly. This makes diagnosing + # misconfiguration (e.g. missing breakpoint) easier. + data = bytearray(page_len) + data[0:8] = b'IHELPED!' + + error = lldb.SBError() + frame.GetThread().GetProcess().WriteMemory(base, data, error) + if not error.Success(): + print(f'Failed to write into {base}[+{page_len}]', error) + return + +def __lldb_init_module(debugger: lldb.SBDebugger, _): + target = debugger.GetDummyTarget() + # Caveat: must use BreakpointCreateByRegEx here and not + # BreakpointCreateByName. For some reasons callback function does not + # get carried over from dummy target for the later. + bp = target.BreakpointCreateByRegex("^NOTIFY_DEBUGGER_ABOUT_RX_PAGES$") + bp.SetScriptCallbackFunction('{}.handle_new_rx_page'.format(__name__)) + bp.SetAutoContinue(True) + print("-- LLDB integration loaded --") diff --git a/example/ios/Flutter/ephemeral/flutter_lldbinit b/example/ios/Flutter/ephemeral/flutter_lldbinit new file mode 100644 index 00000000..e3ba6fbe --- /dev/null +++ b/example/ios/Flutter/ephemeral/flutter_lldbinit @@ -0,0 +1,5 @@ +# +# Generated file, do not edit. +# + +command script import --relative-to-command-file flutter_lldb_helper.py diff --git a/example/ios/Flutter/flutter_export_environment.sh b/example/ios/Flutter/flutter_export_environment.sh index 4ef53ec7..84c194cc 100755 --- a/example/ios/Flutter/flutter_export_environment.sh +++ b/example/ios/Flutter/flutter_export_environment.sh @@ -3,12 +3,11 @@ export "FLUTTER_ROOT=/Users/andrespaez/Development/flutter" export "FLUTTER_APPLICATION_PATH=/Users/andrespaez/Documents/GitHub/flutter-segment/example" export "COCOAPODS_PARALLEL_CODE_SIGN=true" -export "FLUTTER_TARGET=/Users/andrespaez/Documents/GitHub/flutter-segment/example/lib/main.dart" +export "FLUTTER_TARGET=lib/main.dart" export "FLUTTER_BUILD_DIR=build" export "FLUTTER_BUILD_NAME=0.0.1" export "FLUTTER_BUILD_NUMBER=1" -export "DART_DEFINES=RkxVVFRFUl9XRUJfQVVUT19ERVRFQ1Q9dHJ1ZQ==,RkxVVFRFUl9XRUJfQ0FOVkFTS0lUX1VSTD1odHRwczovL3d3dy5nc3RhdGljLmNvbS9mbHV0dGVyLWNhbnZhc2tpdC9lNzZjOTU2NDk4ODQxZTFhYjQ1ODU3N2QzODkyMDAzZTU1M2U0ZjNjLw==" export "DART_OBFUSCATION=false" export "TRACK_WIDGET_CREATION=true" export "TREE_SHAKE_ICONS=false" -export "PACKAGE_CONFIG=/Users/andrespaez/Documents/GitHub/flutter-segment/example/.dart_tool/package_config.json" +export "PACKAGE_CONFIG=.dart_tool/package_config.json" diff --git a/example/ios/Podfile b/example/ios/Podfile index 6cb53b15..b8be9879 100644 --- a/example/ios/Podfile +++ b/example/ios/Podfile @@ -29,7 +29,6 @@ flutter_ios_podfile_setup target 'Runner' do use_frameworks! - pod 'segment-appsflyer-ios', :git => 'https://github.com/Drafteame/segment-appsflyer-ios.git', :tag => '6.17.3' flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__)) end diff --git a/example/ios/Podfile.lock b/example/ios/Podfile.lock index 6de12aec..1da0a828 100644 --- a/example/ios/Podfile.lock +++ b/example/ios/Podfile.lock @@ -3,29 +3,28 @@ PODS: - AnalyticsConnector (~> 1.0.0) - Analytics (4.1.6) - AnalyticsConnector (1.0.3) - - AppsFlyerFramework (6.14.2): - - AppsFlyerFramework/Main (= 6.14.2) - - AppsFlyerFramework/Main (6.14.2) + - AppsFlyerFramework (6.17.8): + - AppsFlyerFramework/Main (= 6.17.8) + - AppsFlyerFramework/Main (6.17.8) - Flutter (1.0.0) - - flutter_segment (3.13.1): + - flutter_segment (4.2.0): - Analytics (= 4.1.6) - Flutter - Segment-Amplitude (= 3.3.2) - - segment-appsflyer-ios (= 6.14.2) + - segment-appsflyer-ios (= 6.17.8) - Segment-Amplitude (3.3.2): - Amplitude (~> 8.3) - Analytics - - segment-appsflyer-ios (6.14.2): + - segment-appsflyer-ios (6.17.8): - Analytics - - segment-appsflyer-ios/Main (= 6.14.2) - - segment-appsflyer-ios/Main (6.14.2): + - segment-appsflyer-ios/Main (= 6.17.8) + - segment-appsflyer-ios/Main (6.17.8): - Analytics - - AppsFlyerFramework (= 6.14.2) + - AppsFlyerFramework (= 6.17.8) DEPENDENCIES: - Flutter (from `Flutter`) - flutter_segment (from `.symlinks/plugins/flutter_segment/ios`) - - segment-appsflyer-ios (from `https://github.com/Drafteame/segment-appsflyer-ios.git`, tag `6.14.2`) SPEC REPOS: trunk: @@ -34,31 +33,24 @@ SPEC REPOS: - AnalyticsConnector - AppsFlyerFramework - Segment-Amplitude + - segment-appsflyer-ios EXTERNAL SOURCES: Flutter: :path: Flutter flutter_segment: :path: ".symlinks/plugins/flutter_segment/ios" - segment-appsflyer-ios: - :git: https://github.com/Drafteame/segment-appsflyer-ios.git - :tag: 6.14.2 - -CHECKOUT OPTIONS: - segment-appsflyer-ios: - :git: https://github.com/Drafteame/segment-appsflyer-ios.git - :tag: 6.14.2 SPEC CHECKSUMS: Amplitude: 8260687c17fe702bd0ae56c23f7a60207a7efd25 Analytics: eefe524436f904b8bb3f8c8c3425280e43b34efc AnalyticsConnector: a53214d38ae22734c6266106c0492b37832633a9 - AppsFlyerFramework: b3de9a49c6af8a8e38c44603e468b5e207f22466 - Flutter: e0871f40cf51350855a761d2e70bf5af5b9b5de7 - flutter_segment: 91c05b4bfced08254b3138034ada8d1b5b681f97 + AppsFlyerFramework: 63577b60d6b9fcdab60135289979e7d1c9ec79b9 + Flutter: cabc95a1d2626b1b06e7179b784ebcf0c0cde467 + flutter_segment: 51a3f768a10971bdbc4ff0fa759b43e39305448f Segment-Amplitude: 6c1e59c8c278a21029ba7a6a788fcb31b9233a2c - segment-appsflyer-ios: 800b03ddf925c2d1f37a3ba45615cb85101cef01 + segment-appsflyer-ios: 1e415e65b0ee3d3dcfc1d3bd3dbab20a6fecef09 -PODFILE CHECKSUM: 80ad04ebe7407cc11eee75d78a37bd475c7909ae +PODFILE CHECKSUM: 057c64d4fa7190806e100b48d6525d9791444878 -COCOAPODS: 1.15.2 +COCOAPODS: 1.16.2 diff --git a/example/ios/Runner.xcodeproj/project.pbxproj b/example/ios/Runner.xcodeproj/project.pbxproj index 4b2203c5..0f7b3d63 100644 --- a/example/ios/Runner.xcodeproj/project.pbxproj +++ b/example/ios/Runner.xcodeproj/project.pbxproj @@ -151,6 +151,7 @@ 9705A1C41CF9048500538489 /* Embed Frameworks */, 3B06AD1E1E4923F5004D2608 /* Thin Binary */, 6AAA9DAC8868826166E7F2C8 /* [CP] Embed Pods Frameworks */, + 441A28822413E5E31D66CF2D /* [CP] Copy Pods Resources */, ); buildRules = ( ); @@ -225,6 +226,24 @@ shellPath = /bin/sh; shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; }; + 441A28822413E5E31D66CF2D /* [CP] Copy Pods Resources */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources.sh", + "${PODS_CONFIGURATION_BUILD_DIR}/AppsFlyerFramework/AppsFlyerLib_Privacy.bundle", + ); + name = "[CP] Copy Pods Resources"; + outputPaths = ( + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AppsFlyerLib_Privacy.bundle", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources.sh\"\n"; + showEnvVarsInLog = 0; + }; 6AAA9DAC8868826166E7F2C8 /* [CP] Embed Pods Frameworks */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; diff --git a/example/pubspec.lock b/example/pubspec.lock index fc006dec..54b29c3e 100644 --- a/example/pubspec.lock +++ b/example/pubspec.lock @@ -21,26 +21,26 @@ packages: dependency: transitive description: name: characters - sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605" + sha256: f71061c654a3380576a52b451dd5532377954cf9dbd272a78fc8479606670803 url: "https://pub.dev" source: hosted - version: "1.3.0" + version: "1.4.0" clock: dependency: transitive description: name: clock - sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf + sha256: fddb70d9b5277016c77a80201021d40a2247104d9f4aa7bab7157b7e3f05b84b url: "https://pub.dev" source: hosted - version: "1.1.1" + version: "1.1.2" collection: dependency: transitive description: name: collection - sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a + sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76" url: "https://pub.dev" source: hosted - version: "1.18.0" + version: "1.19.1" cupertino_icons: dependency: "direct main" description: @@ -53,10 +53,10 @@ packages: dependency: transitive description: name: fake_async - sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78" + sha256: "5368f224a74523e8d2e7399ea1638b37aecfca824a3cc4dfdf77bf1fa905ac44" url: "https://pub.dev" source: hosted - version: "1.3.1" + version: "1.3.3" flutter: dependency: "direct main" description: flutter @@ -68,7 +68,7 @@ packages: path: ".." relative: true source: path - version: "4.0.0" + version: "4.1.0" flutter_test: dependency: "direct dev" description: flutter @@ -83,63 +83,63 @@ packages: dependency: transitive description: name: leak_tracker - sha256: "78eb209deea09858f5269f5a5b02be4049535f568c07b275096836f01ea323fa" + sha256: "33e2e26bdd85a0112ec15400c8cbffea70d0f9c3407491f672a2fad47915e2de" url: "https://pub.dev" source: hosted - version: "10.0.0" + version: "11.0.2" leak_tracker_flutter_testing: dependency: transitive description: name: leak_tracker_flutter_testing - sha256: b46c5e37c19120a8a01918cfaf293547f47269f7cb4b0058f21531c2465d6ef0 + sha256: "1dbc140bb5a23c75ea9c4811222756104fbcd1a27173f0c34ca01e16bea473c1" url: "https://pub.dev" source: hosted - version: "2.0.1" + version: "3.0.10" leak_tracker_testing: dependency: transitive description: name: leak_tracker_testing - sha256: a597f72a664dbd293f3bfc51f9ba69816f84dcd403cdac7066cb3f6003f3ab47 + sha256: "8d5a2d49f4a66b49744b23b018848400d23e54caf9463f4eb20df3eb8acb2eb1" url: "https://pub.dev" source: hosted - version: "2.0.1" + version: "3.0.2" matcher: dependency: transitive description: name: matcher - sha256: d2323aa2060500f906aa31a895b4030b6da3ebdcc5619d14ce1aada65cd161cb + sha256: dc58c723c3c24bf8d3e2d3ad3f2f9d7bd9cf43ec6feaa64181775e60190153f2 url: "https://pub.dev" source: hosted - version: "0.12.16+1" + version: "0.12.17" material_color_utilities: dependency: transitive description: name: material_color_utilities - sha256: "0e0a020085b65b6083975e499759762399b4475f766c21668c4ecca34ea74e5a" + sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec url: "https://pub.dev" source: hosted - version: "0.8.0" + version: "0.11.1" meta: dependency: transitive description: name: meta - sha256: d584fa6707a52763a52446f02cc621b077888fb63b93bbcb1143a7be5a0c0c04 + sha256: "23f08335362185a5ea2ad3a4e597f1375e78bce8a040df5c600c8d3552ef2394" url: "https://pub.dev" source: hosted - version: "1.11.0" + version: "1.17.0" path: dependency: transitive description: name: path - sha256: "087ce49c3f0dc39180befefc60fdb4acd8f8620e5682fe2476afd0b3688bb4af" + sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5" url: "https://pub.dev" source: hosted - version: "1.9.0" + version: "1.9.1" sky_engine: dependency: transitive description: flutter source: sdk - version: "0.0.99" + version: "0.0.0" source_span: dependency: transitive description: @@ -152,18 +152,18 @@ packages: dependency: transitive description: name: stack_trace - sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b" + sha256: "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1" url: "https://pub.dev" source: hosted - version: "1.11.1" + version: "1.12.1" stream_channel: dependency: transitive description: name: stream_channel - sha256: ba2aa5d8cc609d96bbb2899c28934f9e1af5cddbd60a827822ea467161eb54e7 + sha256: "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d" url: "https://pub.dev" source: hosted - version: "2.1.2" + version: "2.1.4" string_scanner: dependency: transitive description: @@ -184,18 +184,18 @@ packages: dependency: transitive description: name: test_api - sha256: "5c2f730018264d276c20e4f1503fd1308dfbbae39ec8ee63c5236311ac06954b" + sha256: ab2726c1a94d3176a45960b6234466ec367179b87dd74f1611adb1f3b5fb9d55 url: "https://pub.dev" source: hosted - version: "0.6.1" + version: "0.7.7" vector_math: dependency: transitive description: name: vector_math - sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" + sha256: d530bd74fea330e6e364cda7a85019c434070188383e1cd8d9777ee586914c5b url: "https://pub.dev" source: hosted - version: "2.1.4" + version: "2.2.0" vm_service: dependency: transitive description: @@ -205,5 +205,5 @@ packages: source: hosted version: "13.0.0" sdks: - dart: "3.3.3" - flutter: ">=1.12.13+hotfix.4" + dart: ">=3.10.4 <4.0.0" + flutter: ">=3.18.0-18.0.pre.54" diff --git a/example/pubspec.yaml b/example/pubspec.yaml index f8965371..c8e414fd 100644 --- a/example/pubspec.yaml +++ b/example/pubspec.yaml @@ -5,7 +5,7 @@ publish_to: 'none' version: 0.0.1+1 environment: - sdk: "3.3.3" + sdk: ">=3.10.4" dependencies: # The following adds the Cupertino Icons font to your application. diff --git a/example/web/index.html b/example/web/index.html index 8bf3f7c6..7c28ccfd 100644 --- a/example/web/index.html +++ b/example/web/index.html @@ -6,7 +6,7 @@