mirror of
https://github.com/flutter/samples.git
synced 2025-11-13 10:59:04 +00:00
Simplify experimental pedometer example (#2104)
Since ffigen added support for [`NativeCallable.listener`](https://api.flutter.dev/flutter/dart-ffi/NativeCallable/NativeCallable.listener.html) to its ObjC bindings, this example can be simplified. We can replace the `Dart_Port` logic with `ObjCBlock.listener`, which lets us get rid of most of the native code. We still need a small bit of native code to `retain` a reference to the callback's arguments before invoking the listener, otherwise the arguments may be ref counted and deleted before the Dart side of the callback is invoked. See https://github.com/dart-lang/native/issues/835
This commit is contained in:
@@ -7,17 +7,18 @@ compiler-opts:
|
||||
- "-F/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks"
|
||||
- "-mios-version-min=13.0"
|
||||
exclude-all-by-default: true
|
||||
functions:
|
||||
include:
|
||||
- "wrapCallback"
|
||||
objc-interfaces:
|
||||
include:
|
||||
- "CMPedometer"
|
||||
- "PedometerHelper"
|
||||
- "NSDate"
|
||||
- "NSDateFormatter"
|
||||
headers:
|
||||
entry-points:
|
||||
- "/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CoreMotion.framework/Headers/CMPedometer.h"
|
||||
- "src/pedometerHelper.h"
|
||||
|
||||
# To use this API, you must include the NSMotionUsageDescription key in your app’s Info.plist file
|
||||
# and provide a usage description string for this key.
|
||||
# The usage description appears in the prompt that the user must accept the first time the system asks the user to access motion data for your app.
|
||||
# The usage description appears in the prompt that the user must accept the first time the system asks the user to access motion data for your app.
|
||||
|
||||
Reference in New Issue
Block a user