最近需要使用到华为push,就研究了一下。但是上网搜索了,都说,华为push是一个大坑。我暂且不说遇到的坑,只是说,最基础的集成。我是用的IDE是Android Studio,这里只讲解有关于Android Studio的集成方式,Eclipse大神请绕步。
首先要注册一个账号,进入华为开发者联盟官网, 点击管理中心。
然后进入管理中心页面,我们在选择push服务
我们进入到了push页面,我们就可以做一些操作了。首先创建一个应用。
点击申请push服务,我们可以看到,创建应用时需要写一些信息。
按照自己的项目进行选择创建。需要注意的一点是,我们发现他需要的SHA256证书指纹可以有多个,是因为。你的项目有可能会有多个指纹证书,都可以写在上面。这个SHA256证书指纹不能填写DeBug模式下的指纹。需要的是release模式下的指纹证书。所以,我们需要先进行apk打包。这里我就不多讲述了。
获取SHA256指纹证书我说一下吧。
首先打开cmd命令窗口。找到我们的keystore文件。也就是jks文件,输入命令keytool -list -v -keystore 你的jks文件名.jks
如果输入成功按下回车,会让你输入密码,但是输入密码时是无状态的,就输入生成jks文件的密码就行。然后你就能得到你的SHA256证书指纹了。
完成以上才是完成了第一步,在平台创建应用。
下面再看华为文档。不得不说,如果一步一步按文档集成还是很靠谱的,就是有时候,你不知道它想表达些什么,可能我理解能力有限,嘿嘿。我们先下载文档提供的SDK。SDK入口随处可见,在你的PUSH页面,创建好的应用上方有几个选项,我们选择SDK下载。会发现,进入了消息推送服务文档中心。我们就根据文中心,一步一步的集成华为push。
先下载SDK,这里是新版SDK,由于旧版的不在维护,我们就不做集成讲解。
下载过后,你会得到一个HMSAgent_2.6.3.301文件夹,打开它
你会看到这么几个文件。点击运行GetHMSAgent_cn.bat程序,根据提示一步一步集成
首先输入包名,包名在你的AndroidManifest.xml文件中就能得到。appid是你在华为push服务平台上创建的应用的appid
cpid,我们可以不用填,那是在集成游戏和支付时,才会使用到的。
我们只需要集成push服务,其它的都选择0就可以,按任意键结束后,打开copysrc文件夹。一直往里点,我们会得到如下文件。
这就是我们所需要的PUSH服务SDK了。将其copy到我们的工程中去,由于位置不同,我们需要再我们的项目中,将这些文件中的导包路径修改一下,是个体力活。
修改完成,确认无报错的情