app/build.gradle | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/AndroidManifest.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/java/com/hdl/photovoltaic/HDLApp.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/java/com/hdl/photovoltaic/jpush/JPushReceiverService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/java/com/hdl/photovoltaic/jpush/JpushService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
app/build.gradle
@@ -36,17 +36,26 @@ abiFilters 'x86', 'armeabi-v7a', "arm64-v8a" //不支持armeabi } manifestPlaceholders = [ JPUSH_PKGNAME: applicationId, //JPush 上注册的包名对应的 Appkey. JPUSH_APPKEY : "3baee103750e192ba68f3878", //暂时填写默认值即可. JPUSH_CHANNEL: "developer-default", ] } repositories { flatDir { dirs 'libs' } } //此处配置必须添加 否则无法正确运行uni aaptOptions { additionalParameters '--auto-add-overlay' //noCompress 'foo', 'bar' ignoreAssetsPattern "!.svn:!.git:.*:!CVS:!thumbs.db:!picasa.ini:!*.scc:*~" } repositories { flatDir { dirs 'libs' } } /** * 打包自动命名 @@ -139,9 +148,10 @@ //通用适配器 implementation 'com.github.CymChad:BaseRecyclerViewAdapterHelper:3.0.6' // //极光 // implementation 'cn.jiguang.sdk:jpush:4.6.2' // 此处以JPush 4.6.2 版本为例。 // implementation 'cn.jiguang.sdk:jcore:3.2.2' // 此处以JCore 3.2.2 版本为例。 // 此处以JPush 5.0.3 版本为例,注意:从 5.0.0 版本开始可以自动拉取 JCore 包,无需另外配置 implementation 'cn.jiguang.sdk:jpush-google:5.2.2' //分析和用户标签等功能(可选,集成极光分析SDK后,即可支持行为触发推送消息、推送转化率统计,用户行为分) implementation 'cn.jiguang.sdk:joperate:2.0.2' } app/src/main/AndroidManifest.xml
@@ -56,10 +56,20 @@ <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> <uses-permission android:name="com.hdl.debugtreasure.permission.JPUSH_MESSAGE" /> <uses-permission android:name="android.permission.CALL_PHONE" /> <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" /> <uses-permission android:name="android.permission.BLUETOOTH" /> <!-- Required --> <permission android:name="com.hdl.photovoltaic.permission.JPUSH_MESSAGE" android:protectionLevel="signature" /> <uses-permission android:name="com.hdl.photovoltaic.permission.JPUSH_MESSAGE" /> <!-- 适配Android13,弹出通知必须权限--> <uses-permission android:name="android.permission.POST_NOTIFICATIONS" /> <application android:name=".HDLApp" @@ -154,6 +164,34 @@ tools:replace="android:resource" /> </provider> <!-- Since JCore2.0.0 Required SDK核心功能--> <!-- 可配置android:process参数将Service放在其他进程中;android:enabled属性不能是false --> <!-- 这个是自定义Service,要继承极光JCommonService,可以在更多手机平台上使得推送通道保持的更稳定 --> <service android:name=".jpush.JpushService" android:enabled="true" android:exported="false" android:process=":pushcore"> <intent-filter> <action android:name="cn.jiguang.user.service.action" /> </intent-filter> </service> <!-- Required since 5.2.0 --> <!-- 新的 tag/alias 接口结果返回需要开发者配置一个自定义的Service --> <!-- 5.2.0开始所有事件将通过该类回调 --> <!-- 该广播需要继承 JPush 提供的 JPushMessageService 类, 并如下新增一个 Intent-Filter --> <service android:name=".jpush.JPushReceiverService" android:enabled="true" android:exported="false"> <intent-filter> <action android:name="cn.jpush.android.intent.SERVICE_MESSAGE" /> <category android:name="com.hdl.photovoltaic" /> </intent-filter> </service> <meta-data android:name="design_height_in_dp" android:value="812" /> app/src/main/java/com/hdl/photovoltaic/HDLApp.java
@@ -38,6 +38,7 @@ import java.util.Locale; import java.util.Objects; import cn.jpush.android.api.JPushInterface; import io.dcloud.common.util.RuningAcitvityUtil; import okhttp3.logging.HttpLoggingInterceptor; @@ -127,7 +128,7 @@ // //9.初始化网络工具 // NetWorkUtil.init(this); // //10.初始化极光推送 // initJPush(); initJPush(); initHDLLinkPMSdk(); HDLLinkLocalSdk.getInstance().init(getInstance()); initSocket(); @@ -217,8 +218,8 @@ } private void initJPush() { // JPushInterface.setDebugMode(true); // JPushInterface.init(getBaseContext()); JPushInterface.setDebugMode(true); JPushInterface.init(getBaseContext()); } app/src/main/java/com/hdl/photovoltaic/jpush/JPushReceiverService.java
New file @@ -0,0 +1,70 @@ package com.hdl.photovoltaic.jpush; import android.content.Context; import com.google.gson.Gson; import com.hdl.photovoltaic.other.HdlLogLogic; import cn.jpush.android.api.CustomMessage; import cn.jpush.android.api.NotificationMessage; import cn.jpush.android.service.JPushMessageService; /** * 接收极光推送消息 */ public class JPushReceiverService extends JPushMessageService { /** * 自定义消息回调 * * @param context Context * @param customMessage 接收自定义消息内容 */ public void onMessage(Context context, CustomMessage customMessage) { HdlLogLogic.print("极光->自定义消息回调====>" + new Gson().toJson(customMessage), true); } /** * 点击通知回调 * * @param context Context * @param message 接收到的通知内容 */ public void onNotifyMessageOpened(Context context, NotificationMessage message) { HdlLogLogic.print("极光->点击通知回调====>" + new Gson().toJson(message), true); } /** * 收到通知回调 * * @param context Context * @param message 接收到的通知内容 */ public void onNotifyMessageArrived(Context context, NotificationMessage message) { HdlLogLogic.print("极光->接收到的通知内容====>" + new Gson().toJson(message), true); } /** * 注册成功回调 * * @param context Context * @param registrationId 注册 id */ public void onRegister(Context context, String registrationId) { HdlLogLogic.print("极光->注册成功回调Id====>" + registrationId, true); } /** * 长连接状态回调 * * @param context Context。 * @param isConnected 长连接状态 */ public void onConnected(Context context, boolean isConnected) { HdlLogLogic.print("极光->长连接状态回调====>" + isConnected, true); } } app/src/main/java/com/hdl/photovoltaic/jpush/JpushService.java
New file @@ -0,0 +1,9 @@ package com.hdl.photovoltaic.jpush; import cn.jpush.android.service.JCommonService; /** * 极光推送服务 */ public class JpushService extends JCommonService { }