HBuilder h5+app 项目 安卓本地打包,集成个推推送

1.在HBuilder X 编辑器中创建5+项目

写一个测试页面项目,然后连接手机测试,详细内容请看我另一篇文章:

HBuilder X 集成vue项目到5+APP中,运行打包测试发布

不同之处在于此次我们要在manifest.json中多配置push推送

HBuilder h5+app 项目 安卓本地打包,集成个推推送_第1张图片

上图箭头处选中,下图个推选中,值一定要填写,这些值是个推赋予的值

个推官网:https://dev.getui.com/    注册完成后根据文档创建应用,就会有对应的应用值

HBuilder h5+app 项目 安卓本地打包,集成个推推送_第2张图片

配置完成后然后点击 发行--->本地打包---->生成本地打包资源

HBuilder h5+app 项目 安卓本地打包,集成个推推送_第3张图片

生成本地打包资源后根据andriod本地打包指南进行操作

进入链接网址后根据文档,下载箭头所指的SDK

HBuilder h5+app 项目 安卓本地打包,集成个推推送_第4张图片

 

2.Android studio 运行、打包测试

下载后根据文档进行操作         

Android平台本地(离线)打包指南 - Android Studio     

Android平台离线打包推送插件配置

以下内容根据文档结合自己实际操作做出修改

配置编译工程

导入演示应用HBuilder-Hello工程
启动AndroidStudio 点击导入工程“import project”

HBuilder h5+app 项目 安卓本地打包,集成个推推送_第5张图片

配置应用的包名及版本号
打开AndroidManifest.xml文件,在代码视图中修改根节点的package属性值,如下:

HBuilder h5+app 项目 安卓本地打包,集成个推推送_第6张图片

其中package为应用的包名,采用反向域名格式,为应用的标识;code和name配置会报错,暂时我没有配置

versionCode为应用的版本号(整数值),用于各应用市场的升级判断,建议与manifest.json中version -> code值一致;versionName为应用的版本名称(字符串),在系统应用管理程序中显示的版本号,建议与manifest.json中version -> name值一致。

配置应用名称
打开app->src》res -> values -> strings.xml文件,修改“app_name”字段值,该值为安装到手机上桌面显示的应用名称,建议与manifest.json中name(基础配置中的应用名称)对应:

HBuilder h5+app 项目 安卓本地打包,集成个推推送_第7张图片

打开app->src>main>res -> values -> strings.xml文件,修改标签内的name和上面一样

HBuilder h5+app 项目 安卓本地打包,集成个推推送_第8张图片

配置应用图标和启动界面
将应用的图标(文件名为icon.png)启动图片按照对应的尺寸拷贝到工程的app->src->main->res -> drawable-XXX目录下:

HBuilder h5+app 项目 安卓本地打包,集成个推推送_第9张图片

更新应用资源
打开app->src->main->assets -> apps 目录,将下面“HelloH5”目录名称修改为应用manifest.json中的id名称(这步非常重要,否则会导致应用无法正常启动),并将所有应用资源拷贝到其下的www目录中

HBuilder h5+app 项目 安卓本地打包,集成个推推送_第10张图片

配置应用信息
打开app->src->main->assets -> data下的control.xml文件,修改appid和appver的值:

HBuilder h5+app 项目 安卓本地打包,集成个推推送_第11张图片

其中appid值为HBuilder应用的appid,必须与应用manifest.json中的id值完全一致;appver为应用的版本号,用于应用资源的升级,必须保持与manifest.json中的version -> name值完全一致;version值为应用基座版本号(plus.runtime.innerVersion返回的值),不要随意修改。

打开app>build.gradle,修改android.defaultConfig.applicationId的值  和AndroidManifest.xml的package包名一致

3.配置完成后,编译运行

使用USB连接手机,点击运行按钮,弹出如下弹窗,然后选择设备,点击OK

HBuilder h5+app 项目 安卓本地打包,集成个推推送_第12张图片

此过程可能会出现的错误:

1.adb.exe未运行,停止工作 

HBuilder h5+app 项目 安卓本地打包,集成个推推送_第13张图片

解决办法:因为adb.exe默认占用5037端口,这时可能端口已被其他应用占用,

查看5037的端口情况,输入 netstat -aon|findstr "5037":

 HBuilder h5+app 项目 安卓本地打包,集成个推推送_第14张图片

然后启动任务管理器,杀死该进程对应的程序,点击重新运行;

2.Device supports ,but apk only supports armeabi,x86,x86_64

设置支持,但是apk仅支持armeabi,x86,x86_64,

这些是CPU架构,目前Android支持以下CPU,

armeabi     第5代 ARM v5TE,使用软件浮点运算,兼容所有ARM设备,通用性强,速度慢
armeabi-v7a  第7代 ARM v7,使用硬件浮点运算,具有高级扩展功能
arm64-v8a   第8代,64位,包含AArch32、AArch64两个执行状态对应32、64bit
x86  intel 32位,一般用于平板
x86_64   intel 64位,一般用于平板
mips    少接触
mips64   少接触
   

解决:

打开app>build.gradle,修改ndk
    HBuilder h5+app 项目 安卓本地打包,集成个推推送_第15张图片
  
  添加后重启,解决问题,当然还有一种原因就是你的USB连接线不行,或者你没有连接成功电脑

3.Please Select Android SDK

请选择SDK,出现该问题的主要原因是Android Studio程序之前异常关闭,导致配置文件损坏

解决:

打开File->Setting>Appearance&Behavior->System Settings>Android SDK,在弹出的“SDK Components Setup”对话框中不修改任何设置,直接一路next下去,最后点击finish,重启Android studio


  接上步,如果运行成功,打开logcat,输入clientid,如果显示CID,说明个推SDK已经集成成功

4.运行成功后,测试消息发送

1.在个推官网通过创建推送来发送消息测试,如果能收到消息,那么恭喜你成功了

2.通过Java服务端代码进行测试,同样能收到消息,代表成功

5.测试成功后,打包成apk安装包,再次进行测试

选择Build>Generate Signed APK  ,弹窗内选择resele进行打包,不用debug版,打包成功后安装到手机,再次测试消息推送

 

至此结束,后续进行苹果版本研究

 

 

 

 

你可能感兴趣的:(HBuilder h5+app 项目 安卓本地打包,集成个推推送)