1.在SDK/libs目录下找到unipush所需的jar/aar文件
在SDK/libs目录下找到这几个文件:aps-release.aar, aps-unipush-release.aar, gtc-3.1.1.0.aar, gtsdk-3.2.0.0.aar, hwp-3.0.1.aar, mzp-3.0.2.aar, oppo-3.0.3.aar, vivo-3.0.3.aar, xmp-3.0.2.aar
2.将上面那几个文件复制到android studio项目的libs目录下
复制前:
复制后:
3.打开build.gradle,在defaultConfig添加manifestPlaceholders节点
"GETUI_APPID": "unipush的appid",
"plus.unipush.appid" : "unipush的appid",
"plus.unipush.appkey" : "unipush的key",
"plus.unipush.appsecret": "unipush的secret",
"apk.applicationId":"io.dcloud.HBuilder"
]
如下图所示,将io.dcloud.HBuilder替换成自己的应用包名,将appid等信息替换成申请之后的appid等,应用的app id/app key等信息,从开发者后台->unipush->配置管理->应用管理 界面查看
4.dcloud_properties.xml配置
在properties中features节点下添加如下配置
<module name="unipush" value="io.dcloud.feature.unipush.GTPushService"/>
</feature>
5.厂商推送配置(未申请平台无需添加)
添加下列内容到androidmanifest.xml中
<meta-data
android:name="MIPUSH_APPID"
android:value="XM_${XIAOMI_APP_ID}" />
<meta-data
android:name="MIPUSH_APPKEY"
android:value="XM_${XIAOMI_APP_KEY}" />
<!--小米厂商配置——结束-->
<!--魅族厂商配置——开始-->
<meta-data
android:name="MEIZUPUSH_APPID"
android:value="MZ_${MEIZU_APP_ID}" />
<meta-data
android:name="MEIZUPUSH_APPKEY"
android:value="MZ_${MEIZU_APP_KEY}" />
<!--魅族厂商配置——结束-->
<!--华为厂商配置——开始-->
<meta-data
android:name="com.huawei.hms.client.appid"
android:value="${HUAWEI_APP_ID}" />
<!--华为厂商配置——结束-->
<!--OPPO厂商配置——开始-->
<meta-data
android:name="OPPOPUSH_APPKEY"
android:value="OP_${OPPO_APP_KEY}" />
<meta-data
android:name="OPPOPUSH_APPSECRET"
android:value="OP_${OPPO_APP_SECRET}" />
<!--OPPO厂商配置——结束-->
<!--VIVO厂商配置——开始-->
<meta-data
android:name="com.vivo.push.app_id"
android:value="${VIVO_APP_ID}" />
<meta-data
android:name="com.vivo.push.api_key"
android:value="${VIVO_APP_KEY}" />
<!--VIVO厂商配置——结束-->
修改build.gradle,添加对应平台申请的appkey或appid(键名必须统一,如XIAOMI_APP_ID必须同时存在于build.gradle文件和Androidmanifest.xml文件中),如下所示:
defaultConfig {
manifestPlaceholders = [
"XIAOMI_APP_ID":"ccccccccc",
"XIAOMI_APP_KEY":"aaaaaaaaaaaaaa"
]
}
}
OPPO推送
oppo集成uniPush时需在Androidmanifest.xml的入口activity中添加如下配置:
android:name="io.dcloud.PandoraEntry">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
/*oppo配置开始*/
<intent-filter>
<action android:name="android.intent.action.oppopush" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
/*oppo配置结束*/
</activity>
华为推送
HBuilder X 3.0.7及以上版本uniPush更新了华为推送,新版本需要添加如下配置
打开项目根目录下的build.gradle
需要在项目根目录下的build.gradle下添加华为推送的仓库地址,如下:
repositories {
jcenter()
google()
// 配置HMS Core SDK的Maven仓地址。
maven {url 'https://developer.huawei.com/repo/'}
}
dependencies {
classpath 'com.android.tools.build:gradle:3.4.1'
// 增加agcp配置。
classpath 'com.huawei.agconnect:agcp:1.4.1.300'
}
}
allprojects {
repositories {
jcenter()
google()
// 配置HMS Core SDK的Maven仓地址。
maven {url 'https://developer.huawei.com/repo/'}
}
}
在文件头apply plugin: 'com.android.application'下一行添加如下配置。
apply plugin: 'com.huawei.agconnect'
在“dependencies”中添加如下编译依赖
注意:推送库版本号与uniPush对应,不能随便修改。
implementation 'com.huawei.hms:push:5.0.2.300'
}
添加添加华为推送的配置文件
登录华为的AppGallery Connect网站,找到需要集成华为推送的应用,在“项目设置 > 常规”页面的“应用”区域,点击“agconnect-services.json”下载配置文件。
将“agconnect-services.json”文件拷贝到应用级根目录下。
2022年07月28日 下午5:19 沙发
配置好后连cid 都获取不到 是怎么回事