package com.hdl; import android.Manifest; import android.app.Activity; import android.content.Intent; import android.content.pm.PackageManager; import android.os.Build; import android.widget.Toast; import android.support.v4.app.ActivityCompat; import com.common.openapi.ClassInstanceManager; import com.lechange.demo.tools.MediaPlayHelper; import com.mm.android.deviceaddmodule.CommonParam; import com.mm.android.deviceaddmodule.LCDeviceEngine; import com.mm.android.deviceaddmodule.mobilecommon.AppConsume.ProviderManager; import com.mm.android.deviceaddmodule.openapi.CONST; import com.usermodule.net.IUserDataCallBack; import com.usermodule.net.UserNetManager; public class HdlToLc { private static String mAppid; private static String mAppSecret; private static String mUrl; // private static String mOpenId; /// /// /// public static String APP_KEY = "HDL-HOME-APP-TEST"; /// /// /// public static String SECRET_KEY = "WeJ8TY88vbakCcnvH8G1tDUqzLWY8yss"; /** * 子账号token */ private static String mSubToken; private static Activity mActivity; //用乐橙平台直接测试 public static boolean useLCForTest=true; public static void initData(Activity activity,String appKey,String secretKey, boolean isChina,String subToken) { mActivity = activity; mSubToken = subToken; MediaPlayHelper.initContext(mActivity.getApplication().getApplicationContext()); ClassInstanceManager.newInstance().init(mActivity.getApplication()); if (isChina) { mAppSecret = "f869433de68a4a06bb8f9bb89118fc"; mAppid = "lc2ea929282d5f4636"; mUrl = CONST.Envirment.CHINA_TEST.url; ProviderManager.getAppProvider().setAppType(0); } else { mAppSecret = "017fc27bb987496f9a677e4e6f0c88"; mAppid = "lc0285433bc7e8423d"; // mUrl = CONST.Envirment.OVERSEAS_PRO.url; mUrl=CONST.Envirment.CHINA_TEST.url; ProviderManager.getAppProvider().setAppType(1); } APP_KEY=appKey; SECRET_KEY=secretKey; try { CommonParam commonParam = new CommonParam(); commonParam.setEnvirment(mUrl);//云端连接 commonParam.setContext(mActivity.getApplication()); commonParam.setAppId(mAppid); commonParam.setAppSecret(mAppSecret); //SDK信息初始化 LCDeviceEngine.newInstance().init(commonParam); } catch (Throwable e) { Toast.makeText(mActivity, e.getMessage(), Toast.LENGTH_SHORT).show(); } } public static void openActivity() { try { // getSubAccountToken("827a98c98da7469b8bc19bb6a3c7651906"); LCDeviceEngine.newInstance().setSubAccessToken(mSubToken); mActivity.startActivity(new Intent(mActivity,com.lechange.demo.ui.DeviceListActivity.class)); } catch (Throwable e) { Toast.makeText(mActivity, e.getMessage(), Toast.LENGTH_SHORT).show(); } } private static void getSubAccountToken(String openId){ UserNetManager.getInstance().subAccountToken(openId, new IUserDataCallBack() { @Override public void onCallBackOpenId(String str) { if (str!=null){ //暂不保存到sp中了,因为获取需要context。 // PreferencesHelper.getInstance(getApplicationContext()).set(Constants.SUBACCOUNTTOKEN,str); LCDeviceEngine.newInstance().setSubAccessToken(str); mActivity.startActivity(new Intent(mActivity,com.lechange.demo.ui.DeviceListActivity.class)); } } @Override public void onError(Throwable throwable) { } }); } /** * 请求对讲权限 */ public static void requestPermission() { boolean isMinSDKM = Build.VERSION.SDK_INT < 23; boolean isGranted = ActivityCompat.checkSelfPermission(mActivity, Manifest.permission.RECORD_AUDIO) == PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(mActivity, Manifest.permission.ACCESS_COARSE_LOCATION) == PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(mActivity, Manifest.permission.CAMERA) == PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(mActivity, Manifest.permission.WRITE_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(mActivity, Manifest.permission.READ_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED; if (isMinSDKM || isGranted) { return; } requestRecordAudioPermission(); } private static void requestRecordAudioPermission() { if (ActivityCompat.shouldShowRequestPermissionRationale(mActivity, Manifest.permission.RECORD_AUDIO) || ActivityCompat.shouldShowRequestPermissionRationale(mActivity, Manifest.permission.ACCESS_COARSE_LOCATION) || ActivityCompat.shouldShowRequestPermissionRationale(mActivity, Manifest.permission.CAMERA) || ActivityCompat.shouldShowRequestPermissionRationale(mActivity, Manifest.permission.WRITE_EXTERNAL_STORAGE) || ActivityCompat.shouldShowRequestPermissionRationale(mActivity, Manifest.permission.READ_EXTERNAL_STORAGE)) { ActivityCompat.requestPermissions(mActivity, new String[]{ Manifest.permission.RECORD_AUDIO, Manifest.permission.ACCESS_COARSE_LOCATION, Manifest.permission.CAMERA, Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.READ_EXTERNAL_STORAGE}, 1); } else { ActivityCompat.requestPermissions(mActivity, new String[]{ Manifest.permission.RECORD_AUDIO, Manifest.permission.ACCESS_COARSE_LOCATION, Manifest.permission.CAMERA, Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.READ_EXTERNAL_STORAGE}, 1); } } }