From a1ac20d9cbe90b566bffe3ed39a6e07700c3248f Mon Sep 17 00:00:00 2001 From: wjc <1243177876@qq.com> Date: 星期一, 19 六月 2023 10:30:06 +0800 Subject: [PATCH] Merge branch 'wjc' --- app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java | 124 +++++++++++++++++++++++++++++++++++++++++ 1 files changed, 124 insertions(+), 0 deletions(-) diff --git a/app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java b/app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java new file mode 100644 index 0000000..1a16526 --- /dev/null +++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java @@ -0,0 +1,124 @@ +package com.hdl.photovoltaic.other; + + +import com.hdl.photovoltaic.config.UserConfigManage; +import com.hdl.photovoltaic.uni.HDLUniMP; +import com.hdl.photovoltaic.uni.HDLUniMPSDKManager; + +import org.json.JSONObject; + + +import io.dcloud.feature.unimp.DCUniMPJSCallback; + +/** + * uni灏忕▼搴忕殑閫昏緫 + */ +public class HdlUniLogic implements HDLUniMPSDKManager.IOnOtherUniMPEventCallBack { + private static volatile HdlUniLogic sHdlUniLogic; + + /** + * 鑾峰彇褰撳墠瀵硅薄 + * + * @return HdlAccountLogic + */ + public static synchronized HdlUniLogic getInstance() { + if (sHdlUniLogic == null) { + synchronized (HdlUniLogic.class) { + if (sHdlUniLogic == null) { + sHdlUniLogic = new HdlUniLogic(); + } + } + + } + return sHdlUniLogic; + } + + /** + * 鍘熺敓鎺ユ敹uni鍙戞潵鐨勬暟鎹� + * + * @param appId -uni灏忕▼搴忔寚瀹氱殑appId + * @param event -uni灏忕▼搴忓彂鏉ユ暟鎹� + * @param data JSONObject com.alibaba.fastjson瑙f瀽澶勭悊 + * @param callback callback.invoke(JSONObject) 鐢╟om.alibaba.fastjson + */ + @Override + public void onOtherUniMPEventReceive(String appId, String event, Object data, DCUniMPJSCallback callback) { + if (!HDLUniMP.UNI_APP_ID.equals(appId)) { + return; + } + try { + org.json.JSONObject jsonObject = null; + if (data != null) { + jsonObject = new org.json.JSONObject(data.toString()); + } + //浣忓畢妯″潡 + if (HDLUniMP.UNI_EVENT_HOME_CREATION.equals(event)) { + if (callback != null) { + callback.invoke(null); + } + } + HdlLogLogic.print("uni===鍘熺敓鎺ユ敹uni鍙戞潵鐨勬暟鎹�", event + "\r\n" + data); + } catch (Exception e) { + HdlLogLogic.print("uni===鍘熺敓鎺ユ敹uni鍙戞潵鐨勬暟鎹�", e.getMessage()); + } + + } + + /** + * 鍘熺敓鎵撳紑uni鎸囧畾椤甸潰 + * + * @param path 鎵撳紑璺緞 + * @param jsonObject 闄勪欢鏁版嵁(娌℃湁鏁版嵁濉玭ull) + */ + public void openUniMP(String path, JSONObject jsonObject) { + JSONObject json = this.createdJsonDate(jsonObject); + HDLUniMPSDKManager.getInstance().openUniMP(HDLUniMP.UNI_APP_ID, path, json, HdlUniLogic.this); + } + + /** + * 鍘熺敓銆愪富鍔ㄣ�戝悜灏忕▼搴忓彂閫侀�氱煡浜嬩欢 + * 娉ㄦ剰锛氶渶瑕佹彁鍓嶅皬绋嬪簭鍦ㄨ繍琛屾墠鍙垚鍔� + * + * @param topic 涓婚 + * @param body 闄勪欢鏁版嵁(娌℃湁鏁版嵁濉玭ull) + */ + public void sendUni(String topic, String body) { + try { + HDLUniMP.UniCallBackBaseBean callBackBaseBean = new HDLUniMP.UniCallBackBaseBean(); + callBackBaseBean.setTopic(topic); + callBackBaseBean.setData(body); + HDLUniMPSDKManager.getInstance().sendUniMPEvent(HDLUniMP.UNI_APP_ID, HDLUniMP.UNI_APP_ID, callBackBaseBean.getJSONObject()); + } catch (Exception e) { + HdlLogLogic.print("uni===鍘熺敓涓诲姩鍚戝皬绋嬪簭鍙戦�侀�氱煡浜嬩欢", e.getMessage()); + } + } + + /** + * 妫�娴嬫槸鍚﹀綋鍓嶉〉闈㈡敞鍐岀殑callback,鏄殑璇濆垯绉婚櫎 + */ + public void checkRemoveOtherUniMPEventCallBack() { + HDLUniMPSDKManager.getInstance().checkRemoveOtherUniMPEventCallBack(this); + } + + /** + * 缁勮uni鍙戦�佹暟鎹牸寮� + * + * @param data -闄勪欢鏁版嵁(娌℃湁鏁版嵁濉玭ull) + * @return JSONObject + */ + public JSONObject createdJsonDate(JSONObject data) { + HDLUniMP.UniCallBackBaseBean uniCallBackBaseBean = new HDLUniMP.UniCallBackBaseBean(); + try { + if (data == null) { + data = new JSONObject(); + } + data.put("token", UserConfigManage.getInstance().getToken()); + data.put("refreshToken", UserConfigManage.getInstance().getRefreshToken()); + uniCallBackBaseBean.setData(data); + return uniCallBackBaseBean.getJSONObject(); + } catch (Exception e) { + HdlLogLogic.print("uni===缁勮uni鍙戦�佹暟鎹牸寮�", e.getMessage()); + } + return new JSONObject(); + } +} -- Gitblit v1.8.0