我的H5的项目打包成安卓App:
1,使用在线打包工具(免安装,适合快速测试)
推荐工具:
1. PWA to APK(官方方案)
如果你的 H5 是 PWA(渐进式 Web 应用),可直接生成 APK:
- 工具:https://www.pwabuilder.com
- 步骤:
- 输入你的 H5 网站 URL
- 点击 “Build My PWA”
- 选择 Android → 下载 APK
- 但是要注意:由于是谷歌的网站可能会加载很慢,必要时可能需要翻墙。
- 只能打包https+真正的域名的地址(类似这种https://your-domain.com)。如果你是你和我一样是这样的地址http://192.62.160.33:8080/#/是无法打包的,所有他的start按钮是禁用的状态
2,使用 HBuilderX(推荐,最简单)
- 下载安装 HBuilderX
- 新建项目 → 选择 5+App 或 uni-app
- 打开
manifest.on,最重要的是找到 启动页面 配置,设置为你的H5地址:
"launch_path": "http://192.62.160.33:8080/#/"
我把我的manifest.on文件全部复制下来了,你只要修改上面那个launch_path,其他的也可以通过可视化界面自己修改添加,修改后就会自动更新代码的。
{
"@platforms" : [ "android""iPhone""iPad" ],
"id" : "H55DAB2A3"/*应用的标识*/
"name" : "Apk"/*应用名称,程序桌面图标名称*/
"version" : {
"name" : "1.0"/*应用版本名称*/
"code" : "100"
},
"description" : ""/*应用描述信息*/
"icons" : {
"72" : "icon.png"
},
"launch_path" : "http://192.62.160.33:8080/#/", /*应用的入口页面,默认为根目录下的index.html;支持网络地址,必须以http://或https://开头*/
"developer" : {
"name" : ""/*开发者名称*/
"email" : ""/*开发者邮箱地址*/
"url" : "" /*开发者个人主页地址*/
},
"permissions" : {
"INTERNET" : {
"description" : "访问网络"
}
},
"plus" : {
"splashscreen" : {
"autoclose" : true/*是否自动关闭程序启动界面,true表示应用加载应用入口页面后自动关闭;false则需调plus.navigator.closeSplashscreen()关闭*/
"waiting" : true /*是否在程序启动界面显示等待雪花,true表示显示,false表示不显示。*/
},
"popGesture" : "close"/*设置应用默认侧滑返回关闭Webview窗口,"none"为无侧滑返回功能,"hide"为侧滑隐藏Webview窗口。参考http://ask.dcloud.net.cn/article/102*/
"runmode" : "normal"/*应用的首次启动运行模式,可取liberate或normal,liberate模式在第一次启动时将解压应用资源(Android平台File API才可正常访问_www目录)*/
"signature" : "Sk9JTiBVUyBtYWlsdG86aHIyMDEzQGRjbG91ZC5pbw=="/*可选,保留给应用签名,暂不使用*/
"distribute" : {
"apple" : {
"appid" : ""/*iOS应用标识,苹果开发网站申请的appid,如io.dcloud.HelloH5*/
"mobileprovision" : ""/*iOS应用打包配置文件*/
"password" : ""/*iOS应用打包个人证书导入密码*/
"p12" : ""/*iOS应用打包个人证书,打包配置文件关联的个人证书*/
"devices" : "universal"/*iOS应用支持的设备类型,可取值iphone/ipad/universal*/
"frameworks" : [] /*调用Native.调用原生Objective-c API需要引用的FrameWork,如需调用GameCenter,则添加"GameKit.framework"*/
},
"google" : {
"packagename" : "com.myapp.apk",
"keystore" : "",
"password" : "",
"aliasname" : ""
},
/*使用Native.调用原生安卓API需要使用到的系统权限*/
"orientation" : [ "portrait-primary" ]/*应用支持的方向,portrait-primary:竖屏正方向;portrait-secondary:竖屏反方向;landscape-primary:横屏正方向;landscape-secondary:横屏反方向*/
"icons" : {
"ios" : {
"prerendered" : true/*应用图标是否已经高亮处理,在iOS6及以下设备上有效*/
"auto" : ""/*应用图标,分辨率:512x512,用于自动生成各种尺寸程序图标*/
"iphone" : {
"normal" : ""/*iPhone3/3GS程序图标,分辨率:57x57*/
"retina" : ""/*iPhone4程序图标,分辨率:114x114*/
"retina7" : ""/*iPhone4S/5/6程序图标,分辨率:120x120*/
"retina8" : ""/*iPhone6 Plus程序图标,分辨率:180x180*/
"spotlight-normal" : ""/*iPhone3/3GS Spotlight搜索程序图标,分辨率:29x29*/
"spotlight-retina" : ""/*iPhone4 Spotlight搜索程序图标,分辨率:58x58*/
"spotlight-retina7" : ""/*iPhone4S/5/6 Spotlight搜索程序图标,分辨率:80x80*/
"settings-normal" : ""/*iPhone4设置页面程序图标,分辨率:29x29*/
"settings-retina" : ""/*iPhone4S/5/6设置页面程序图标,分辨率:58x58*/
"settings-retina8" : "" /*iPhone6Plus设置页面程序图标,分辨率:87x87*/
},
"ipad" : {
"normal" : ""/*iPad普通屏幕程序图标,分辨率:72x72*/
"retina" : ""/*iPad高分屏程序图标,分辨率:144x144*/
"normal7" : ""/*iPad iOS7程序图标,分辨率:76x76*/
"retina7" : ""/*iPad iOS7高分屏程序图标,分辨率:152x152*/
"spotlight-normal" : ""/*iPad Spotlight搜索程序图标,分辨率:50x50*/
"spotlight-retina" : ""/*iPad高分屏Spotlight搜索程序图标,分辨率:100x100*/
"spotlight-normal7" : ""/*iPad iOS7 Spotlight搜索程序图标,分辨率:40x40*/
"spotlight-retina7" : ""/*iPad iOS7高分屏Spotlight搜索程序图标,分辨率:80x80*/
"settings-normal" : ""/*iPad设置页面程序图标,分辨率:29x29*/
"settings-retina" : "" /*iPad高分屏设置页面程序图标,分辨率:58x58*/
}
},
"android" : {
"mdpi" : ""/*普通屏程序图标,分辨率:48x48*/
"ldpi" : ""/*大屏程序图标,分辨率:48x48*/
"hdpi" : ""/*高分屏程序图标,分辨率:72x72*/
"xhdpi" : ""/*720P高分屏程序图标,分辨率:96x96*/
"xxhdpi" : "" /*1080P 高分屏程序图标,分辨率:144x144*/
}
},
"splashscreen" : {
"ios" : {
"iphone" : {
"default" : ""/*iPhone3启动图片选,分辨率:320x480*/
"retina35" : ""/*3.5英寸设备(iPhone4)启动图片,分辨率:640x960*/
"retina40" : ""/*4.0 英寸设备(iPhone5/iPhone5s)启动图片,分辨率:640x1136*/
"retina47" : ""/*4.7 英寸设备(iPhone6)启动图片,分辨率:750x1334*/
"retina55" : ""/*5.5 英寸设备(iPhone6 Plus)启动图片,分辨率:1242x2208*/
"retina55l" : "" /*5.5 英寸设备(iPhone6 Plus)横屏启动图片,分辨率:2208x1242*/
},
"ipad" : {
"portrait" : ""/*iPad竖屏启动图片,分辨率:768x1004*/
"portrait-retina" : ""/*iPad高分屏竖屏图片,分辨率:1536x2008*/
"landscape" : ""/*iPad横屏启动图片,分辨率:1024x748*/
"landscape-retina" : ""/*iPad高分屏横屏启动图片,分辨率:2048x1496*/
"portrait7" : ""/*iPad iOS7竖屏启动图片,分辨率:768x1024*/
"portrait-retina7" : ""/*iPad iOS7高分屏竖屏图片,分辨率:1536x2048*/
"landscape7" : ""/*iPad iOS7横屏启动图片,分辨率:1024x768*/
"landscape-retina7" : "" /*iPad iOS7高分屏横屏启动图片,分辨率:2048x1536*/
}
},
"android" : {
"mdpi" : ""/*普通屏启动图片,分辨率:240x282*/
"ldpi" : ""/*大屏启动图片,分辨率:320x442*/
"hdpi" : ""/*高分屏启动图片,分辨率:480x762*/
"xhdpi" : ""/*720P高分屏启动图片,分辨率:720x1242*/
"xxhdpi" : "" /*1080P高分屏启动图片,分辨率:1080x1882*/
}
},
"ios" : {
"dSYMs" : false
},
"plugins" : {
"ad" : {}
}
}
}
}
不知道Appid的可以自动点击获取,获取一个

当然App的图标你也可以自己上传

- 菜单栏 → 发行 → 原生App-云打包 → 选择Android → 设置一个包名。勾选使用云端证书。点击打包(我不打算发布到应用市场只打算自己用,所以我就选了云端证书,如果你想上传应用市场那就选择使用自有证书,自有证书的生成方式也可以点击后面的蓝色去连接(https://ask.dcloud.net.cn/article/35777)里面查看生成方式)

- 等待云端打包完成,下载APK
- 打包的过程可能会有一些提示,你可以根据提示步骤和实际情况进行修改和处理。

打包成功后,可以点击打开所在目录查看打包的apk文件

Hbuildex的免费打包机会,一天5次。
可以换用本地离线打包(免费且不限次数) 不依赖云端,自己电脑本地打包,缺点是配置比较麻烦,适合长期使用,步骤如下:
- 下载 HBuilderX 的 Android 离线SDK(在DCloud官网下载)https://nativesupport.dcloud.net.cn/AppDocs/download/android.html
- 安装 Android Studio 和 JDK
- 按官方文档配置本地打包环境
这个方法还没有试过。大家可以在官网自行研究。

2万+






