Search code examples
fluttersegment-iosegment-analytics

Flutter with Segment Analytics


I am trying to add Segment-Analytics to a Flutter app but currently, after adding the lib my app seems to be unable to start, however the build was still successful. lib: https://pub.dev/packages/flutter_segment

when i run flutter run:

Waiting for iPhone 12 Pro Max to report its views...
Debug service listening on ws://127.0.0.1:60371/UvkZwEEEE9Q=/ws
Syncing files to device iPhone 12 Pro Max...
Lost connection to device.

with verbose Ending few lines:

[   +2 ms] Updating assets
[ +800 ms] Manifest contained wildcard assets. Inserting missing file into build graph to force rerun. for more information see #56466.
[  +84 ms] Syncing files to device iPhone 12 Pro Max...
[   +3 ms] Scanning asset files
[  +40 ms] <- reset
[        ] Compiling dart to kernel with 0 updated files
[   +7 ms] <- recompile package:foobar/main.dart ca15a951-5490-4e2d-b153-7b8a5eeeb160
[        ] <- ca15a951-5490-4e2d-b153-7b8a5eeeb160
[   +9 ms] flutter: [debug] release: [email protected]+2
[   +5 ms] Service protocol connection closed.
[   +2 ms] Lost connection to device.
[ +294 ms] Updating files
[   +8 ms] Error writing "build/flutter_assets/assets/images/gadget.png" to DevFS: SocketException: OS Error: Connection refused, errno = 61, address = 127.0.0.1, port = 63860
[        ] trying again in a few - 9 more attempts left
[        ] Error writing "build/flutter_assets/assets/images/logo/ticked.svg" to DevFS: SocketException: OS Error: Connection refused, errno = 61, address = 127.0.0.1, port = 63861
[        ] trying again in a few - 9 more attempts left
[   +1 ms] Error writing "build/flutter_assets/assets/images/logo/kyc.svg" to DevFS: SocketException: OS Error: Connection refused, errno = 61, address = 127.0.0.1, port = 63862
[        ] trying again in a few - 9 more attempts left

any suggestions on how to work around for flutter to be able to send analytics data to segment analytics, from the web app it doesn't support it for the moment.

P/S: Any alternative SW suggestions would also be helpful thanks.


Solution

  • Add the Segment write-key to the native configuration, this would resolve it for now. there is an open issue - https://github.com/claimsforce-gmbh/flutter-segment/issues/87

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
      [...]
      <key>com.claimsforce.segment.WRITE_KEY</key>
      <string>YOUR_WRITE_KEY_GOES_HERE</string>
      <key>com.claimsforce.segment.TRACK_APPLICATION_LIFECYCLE_EVENTS</key>
      <false/>
      <key>com.claimsforce.segment.ENABLE_AMPLITUDE_INTEGRATION</key>
      <false/>
      [...]
    </dict>
    </plist>