From 1a15bc03690a8ef3d342c6b41e86542377c3f251 Mon Sep 17 00:00:00 2001 From: Greg Wilson Date: Tue, 11 Oct 2016 18:48:06 -0400 Subject: [PATCH] updated examples/StepsDemo to use new step count event --- .../StepsDemo/app/components/home/index.js | 21 ++++++++++++++- .../ios/StepsDemo.xcodeproj/project.pbxproj | 26 +++++++++---------- .../StepsDemo/ios/StepsDemo/AppDelegate.m | 2 +- 3 files changed, 34 insertions(+), 15 deletions(-) diff --git a/examples/StepsDemo/app/components/home/index.js b/examples/StepsDemo/app/components/home/index.js index cbb686c..53858c3 100644 --- a/examples/StepsDemo/app/components/home/index.js +++ b/examples/StepsDemo/app/components/home/index.js @@ -9,8 +9,10 @@ import { ScrollView, Image, Text, - View + View, + NativeAppEventEmitter, } from 'react-native'; + import AppleHealthKit from 'react-native-apple-healthkit'; import styles from '../../styles/styles'; import History from './history'; @@ -58,6 +60,19 @@ class Home extends Component { if(this._handleHKError(err, 'initHealthKit')){ return; } + + AppleHealthKit.initStepCountObserver({}, () => {}); + + var subscription = NativeAppEventEmitter.addListener( + 'change:steps', + (evt) => { + console.log('change:steps EVENT!! : ', evt); + this._fetchStepsToday(); + } + ); + + this.sub = subscription; + this._fetchStepsToday(); this._fetchStepsHistory(); }); @@ -65,6 +80,10 @@ class Home extends Component { }); } + componentWillUnmount() { + this.sub.remove(); + } + /** * get today's step count from HealthKit. on success update * the component state diff --git a/examples/StepsDemo/ios/StepsDemo.xcodeproj/project.pbxproj b/examples/StepsDemo/ios/StepsDemo.xcodeproj/project.pbxproj index c9481ba..c433bfc 100644 --- a/examples/StepsDemo/ios/StepsDemo.xcodeproj/project.pbxproj +++ b/examples/StepsDemo/ios/StepsDemo.xcodeproj/project.pbxproj @@ -22,8 +22,8 @@ 13B07FC11A68108700A75B9A /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; }; 140ED2AC1D01E1AD002B40FF /* libReact.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 146834041AC3E56700842450 /* libReact.a */; }; 146834051AC3E58100842450 /* libReact.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 146834041AC3E56700842450 /* libReact.a */; }; + 377F68B31D7A0D9C00B64DB1 /* libRCTAppleHealthKit.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 377F68B21D7A0D9800B64DB1 /* libRCTAppleHealthKit.a */; }; 378616B61D257B040027C300 /* HealthKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 378616B51D257B040027C300 /* HealthKit.framework */; }; - 378DCB741D3190C800E83D06 /* libRCTAppleHealthKit.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 378DCB731D3190C100E83D06 /* libRCTAppleHealthKit.a */; }; 832341BD1AAA6AB300B99B32 /* libRCTText.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 832341B51AAA6A8300B99B32 /* libRCTText.a */; }; /* End PBXBuildFile section */ @@ -91,9 +91,9 @@ remoteGlobalIDString = 83CBBA2E1A601D0E00E9B192; remoteInfo = React; }; - 378DCB721D3190C100E83D06 /* PBXContainerItemProxy */ = { + 377F68B11D7A0D9800B64DB1 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = 378DCB6E1D3190C100E83D06 /* RCTAppleHealthKit.xcodeproj */; + containerPortal = 377F68AD1D7A0D9800B64DB1 /* RCTAppleHealthKit.xcodeproj */; proxyType = 2; remoteGlobalIDString = 3774C88D1D2092F20000B3F3; remoteInfo = RCTAppleHealthKit; @@ -134,9 +134,9 @@ 13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = StepsDemo/Info.plist; sourceTree = ""; }; 13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = StepsDemo/main.m; sourceTree = ""; }; 146833FF1AC3E56700842450 /* React.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = React.xcodeproj; path = "../node_modules/react-native/React/React.xcodeproj"; sourceTree = ""; }; + 377F68AD1D7A0D9800B64DB1 /* RCTAppleHealthKit.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTAppleHealthKit.xcodeproj; path = "../node_modules/react-native-apple-healthkit/RCTAppleHealthKit.xcodeproj"; sourceTree = ""; }; 378616B51D257B040027C300 /* HealthKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = HealthKit.framework; path = System/Library/Frameworks/HealthKit.framework; sourceTree = SDKROOT; }; 378616B71D257B040027C300 /* StepsDemo.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.xml; name = StepsDemo.entitlements; path = StepsDemo/StepsDemo.entitlements; sourceTree = ""; }; - 378DCB6E1D3190C100E83D06 /* RCTAppleHealthKit.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTAppleHealthKit.xcodeproj; path = "../node_modules/react-native-apple-healthkit/RCTAppleHealthKit.xcodeproj"; sourceTree = ""; }; 78C398B01ACF4ADC00677621 /* RCTLinking.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTLinking.xcodeproj; path = "../node_modules/react-native/Libraries/LinkingIOS/RCTLinking.xcodeproj"; sourceTree = ""; }; 832341B01AAA6A8300B99B32 /* RCTText.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTText.xcodeproj; path = "../node_modules/react-native/Libraries/Text/RCTText.xcodeproj"; sourceTree = ""; }; /* End PBXFileReference section */ @@ -154,7 +154,8 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 378DCB741D3190C800E83D06 /* libRCTAppleHealthKit.a in Frameworks */, + 377F68B31D7A0D9C00B64DB1 /* libRCTAppleHealthKit.a in Frameworks */, + 139FDEF61B0652A700C62182 /* libRCTWebSocket.a in Frameworks */, 146834051AC3E58100842450 /* libReact.a in Frameworks */, 00C302E51ABCBA2D00DB3ED1 /* libRCTActionSheet.a in Frameworks */, 378616B61D257B040027C300 /* HealthKit.framework in Frameworks */, @@ -165,7 +166,6 @@ 139105C61AF99C1200B5F7CC /* libRCTSettings.a in Frameworks */, 832341BD1AAA6AB300B99B32 /* libRCTText.a in Frameworks */, 00C302EA1ABCBA2D00DB3ED1 /* libRCTVibration.a in Frameworks */, - 139FDEF61B0652A700C62182 /* libRCTWebSocket.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -268,10 +268,10 @@ name = Products; sourceTree = ""; }; - 378DCB6F1D3190C100E83D06 /* Products */ = { + 377F68AE1D7A0D9800B64DB1 /* Products */ = { isa = PBXGroup; children = ( - 378DCB731D3190C100E83D06 /* libRCTAppleHealthKit.a */, + 377F68B21D7A0D9800B64DB1 /* libRCTAppleHealthKit.a */, ); name = Products; sourceTree = ""; @@ -287,7 +287,7 @@ 832341AE1AAA6A7D00B99B32 /* Libraries */ = { isa = PBXGroup; children = ( - 378DCB6E1D3190C100E83D06 /* RCTAppleHealthKit.xcodeproj */, + 377F68AD1D7A0D9800B64DB1 /* RCTAppleHealthKit.xcodeproj */, 146833FF1AC3E56700842450 /* React.xcodeproj */, 00C302A71ABCB8CE00DB3ED1 /* RCTActionSheet.xcodeproj */, 00C302B51ABCB90400DB3ED1 /* RCTGeolocation.xcodeproj */, @@ -411,8 +411,8 @@ ProjectRef = 00C302A71ABCB8CE00DB3ED1 /* RCTActionSheet.xcodeproj */; }, { - ProductGroup = 378DCB6F1D3190C100E83D06 /* Products */; - ProjectRef = 378DCB6E1D3190C100E83D06 /* RCTAppleHealthKit.xcodeproj */; + ProductGroup = 377F68AE1D7A0D9800B64DB1 /* Products */; + ProjectRef = 377F68AD1D7A0D9800B64DB1 /* RCTAppleHealthKit.xcodeproj */; }, { ProductGroup = 00C302B61ABCB90400DB3ED1 /* Products */; @@ -516,11 +516,11 @@ remoteRef = 146834031AC3E56700842450 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - 378DCB731D3190C100E83D06 /* libRCTAppleHealthKit.a */ = { + 377F68B21D7A0D9800B64DB1 /* libRCTAppleHealthKit.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; path = libRCTAppleHealthKit.a; - remoteRef = 378DCB721D3190C100E83D06 /* PBXContainerItemProxy */; + remoteRef = 377F68B11D7A0D9800B64DB1 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; 78C398B91ACF4ADC00677621 /* libRCTLinking.a */ = { diff --git a/examples/StepsDemo/ios/StepsDemo/AppDelegate.m b/examples/StepsDemo/ios/StepsDemo/AppDelegate.m index a3c062c..1e3212c 100644 --- a/examples/StepsDemo/ios/StepsDemo/AppDelegate.m +++ b/examples/StepsDemo/ios/StepsDemo/AppDelegate.m @@ -31,7 +31,7 @@ * on the same Wi-Fi network. */ // - jsCodeLocation = [NSURL URLWithString:@"http://192.168.0.14:8081/index.ios.bundle?platform=ios&dev=true"]; + jsCodeLocation = [NSURL URLWithString:@"http://192.168.0.13:8081/index.ios.bundle?platform=ios&dev=true"]; // jsCodeLocation = [NSURL URLWithString:@"http://10.1.14.163:8081/index.ios.bundle?platform=ios&dev=true"]; /** * OPTION 2 -- 2.26.2