BluetoothModule.java 2.25 KB
package com.metroapp.nativemodules;

import android.support.annotation.Nullable;

import com.facebook.react.bridge.Promise;
import com.facebook.react.bridge.ReactApplicationContext;
import com.facebook.react.bridge.ReactContextBaseJavaModule;
import com.facebook.react.bridge.ReactMethod;
import com.facebook.react.bridge.WritableMap;
import com.facebook.react.modules.core.DeviceEventManagerModule;
import com.metroapp.MainActivity;
import com.metroapp.utils.DeviceUtil;

/**
 * Created by mingming on 26/3/18.
 */

public class BluetoothModule extends ReactContextBaseJavaModule {

    public static  ReactApplicationContext reactContext;
    public BluetoothModule(ReactApplicationContext reactContext) {
        super(reactContext);
        this.reactContext =getReactApplicationContext();
    }

    @Override
    public String getName() {
        return "BlueToolManage";
    }


    /**
     * 获取三方应用传过来的手机号码
     * @param
     */
    @ReactMethod
    public void getPhoneNumber(Promise promise){
        promise.resolve(MainActivity.mobilePhone);
    }

    /**
     * 判断是否是跳转过来的
     * @param
     */
    @ReactMethod
    public void getCurrentStatus(Promise promise){
        promise.resolve(MainActivity.isFromOtherApp);
    }



    /**
     * 打印日志
     * @param
     */
    @ReactMethod
    public void printLog(String  message){
//        XLog.d(message+"\n");
    }

    /**
     * 获取当前版本号
     * @param
     */
    @ReactMethod
    public void getAppVersion(Promise promise){
       promise.resolve(DeviceUtil.getVersionName(reactContext));
    }




    /**
     * 开启定时器
     * @param
     */
    @ReactMethod
    public void startTimer(String s){
       MainActivity.startTimer(s);
    }

    /**
     * 关闭定时器
     */
    @ReactMethod
    public void stopTimer(){
      MainActivity.stopTimer();

    }

    //定义原生像rn发送事件的函数
    public  static  void sendEvent( String eventName, @Nullable WritableMap params)
    {
        if (reactContext  == null){
            return;
        }
        System.out.println("=====>");
        reactContext
                .getJSModule(DeviceEventManagerModule.RCTDeviceEventEmitter.class)
                .emit(eventName,params);
    }


}