魔蝎 SDK for [React Native][rn].
First, cd
to your RN project directory, and then install.
$ yarn add rnkit_moxie
# or:
$ npm install -S rnkit_moxie
# then:
$ react-native link rnkit_moxie
-
Add
node_modules/rnkit_moxie/ios/RNKitMoXie.xcodeproj
to your xcode project, usually under theLibraries
group -
Add
libRNKitMoXie.a
(fromProducts
underRNKitMoXie.xcodeproj
) to build target'sLinked Frameworks and Libraries
list -
Add
-ObjC
toBuild Settings -> Other Linker Flags
-
Add
libz.tbd
toBuild phases -> Link Binary With Libraries
-
Open the access to albums (some operations need to scan a qrcode): goto
Info.plist
file and add the privacy key according to your requirement:Key: Privacy - Camera Usage Description Value: 需要您的同意,才能访问相册
-
Add image files to your main project: go to
Build phases -> Copy Bundle Resouces
, click the add button, and then choose the images fromnode_modules/RNKitMoXie/MoxieSDK/resouces
(TODO: add resouces from bundle)
$ yarn add rnkit_moxie
# or:
$ npm install -S rnkit_moxie
# then:
$ react-native link rnkit_moxie
TODO:
example:
import { Platform } from 'react-native';
import RNKitMoXie from "rnkit_moxie";
import { DeviceEventEmitter, NativeEventEmitter } from 'react-native';
constructor(props) {
super(props);
this.moxieSubscription
this._initMoxie()
}
componentWillUnmount() {
if (this.moxieSubscription) {
// remember to remove
this.moxieSubscription.remove()
}
}
_initMoxie () {
RNKitMoXie.initial('user_id', 'api_key_value')
if (Platform.OS === 'ios') {
const moxieEmitter = new NativeEventEmitter(RNKitMoXie)
this.moxieSubscription = moxieEmitter.addListener('loginDone', (e) => {
this._callbackForMoxie(e)
})
} else {
DeviceEventEmitter.addListener('loginDone', function (e) {
this._callbackForMoxie(e)
})
}
}
_callbackForMoxie(e) {
console.log('receive functionName: ' + e.functionName)
}