uniapp 发行 原生APP本地打包 安卓APK(最全的步骤)

第11步没写完,后面还有些内容(第三方sdk配置之类的),有空再补上

第一步:正常运行的uniapp

你得有个uniapp,配置是好的可以在微信开发者工具中看的那种,小程序都用不了,就别考虑打包安卓了。

第二步:官方指南

点击HBuilder的发行 --> 原生App-本地打包 -->Android本地打包指南

 告诉你这个是省得你找各种文档了,官方已经给你搞了一个指南:

原生开发者支持DCloud 原生开发者支持网站 uni小程序SDK、App离线打包SDK、原生插件开发https://nativesupport.dcloud.net.cn/AppDocs/usesdk/android

下面的操作都是跟着指南来,不过千人千变,并没有步步都跟指南一模一样(因为会有各种各样的问题),所以就记录一下。

第三步:环境准备

跟着指南来

1)下载Android Studio,带着版本号然后百度,就会有安装教程了。

别以为搞uniapp安卓了,就不用了解原生安卓的开发了,uniapp安卓打包要借助Android Studio 安卓开发工具的。建议你懂一点原生安卓开发,会用这个Android Studio,弄目录结构就差不多了。

2)HBuilderX,我直接就下载了App开发版

 3)下载App离线SDK

这一步是为了后面,我们需要一些jar包和一些文件,都在这个App离线SDK里,先下载好。

 

第四步:Android Studio 新建工程

官方截图有点旧,我的新建工程图:

 注意点:包名,项目名别用中文哈

第五步:配置工程

1) 找App离线SDK里的四个jar包

这个就是刚刚说的要用到App离线SDK里的jar了,四个jar包,它在:

 HBuilder-Integrate-AS\simpleDemo\libs

 注意点:HBuilder-Integrate-AS\simpleDemo\libs 这个路径的jar包刚好是我们要的四个,如果你去其他文件夹找了,你会发现超级多的jar包。。。。

2)复制jar包到自己的Android Studio的新项目里

 

 

 

 

 3)在主app的build.gradle进行相关配置

(这就需要你懂原生安卓的目录结构了,不然你都分不清是哪个文件)

    multiDexEnabled true

    aaptOptions {
        additionalParameters '--auto-add-overlay'
        ignoreAssetsPattern "!.svn:!.git:.*:!CVS:!thumbs.db:!picasa.ini:!*.scc:*~"
    }

    implementation fileTree(include: ['*.jar'], dir: 'libs')
    implementation fileTree(include: ['*.aar'], dir: 'libs')
    implementation 'androidx.appcompat:appcompat:1.0.0'
    implementation 'androidx.legacy:legacy-support-v4:1.0.0'
    implementation 'androidx.recyclerview:recyclerview:1.0.0'
    implementation 'com.facebook.fresco:fresco:2.5.0'
    implementation "com.facebook.fresco:animated-gif:2.5.0"
    implementation 'com.github.bumptech.glide:glide:4.9.0'
    implementation 'com.alibaba:fastjson:1.1.46.android'

4)配置Appkey

1. 生成安卓平台签名证书

注意点:一定要记住别名,一定要记住密码,命令运行完成后就会生成证书,在你的命令行的地址那里。

Android平台签名证书(.keystore)生成指南 - DCloud问答https://ask.dcloud.net.cn/article/35777

2. 生成Appkey

原生开发者支持DCloud 原生开发者支持网站 uni小程序SDK、App离线打包SDK、原生插件开发https://nativesupport.dcloud.net.cn/AppDocs/usesdk/appkey注意点:你的包名,证书别名,证书的SHA1,还有你的uniapp的AppID,要保证没写错哦

 3.配置Appkey

<meta-data
            android:name="dcloud_appkey"
            android:value="替换为自己申请的Appkey" />

4. android平台-配置签名文件打包编译(修改完build.gradle,要sync now)

注意点:debug的不要漏掉,不然你在Android Studio上运行会提示 appkey is not configured or configured incorrect。

 原生开发者支持DCloud 原生开发者支持网站 uni小程序SDK、App离线打包SDK、原生插件开发https://nativesupport.dcloud.net.cn/AppDocs/usesdk/appkey?id=_3%E3%80%81android%E5%B9%B3%E5%8F%B0-%E6%80%8E%E4%B9%88%E9%85%8D%E7%BD%AE%E7%AD%BE%E5%90%8D%E6%96%87%E4%BB%B6%E6%89%93%E5%8C%85%E7%BC%96%E8%AF%91%EF%BC%9F

signingConfigs {
        config {
            keyAlias '签名别名'
            keyPassword '密码'
            storeFile file('xxx.keystore或xxx.jks')
            storePassword '密码'
            v1SigningEnabled true //兼容v1
            v2SigningEnabled true //兼容v2
        }
}

buildTypes {
        debug {
            signingConfig signingConfigs.config
            ...
        }
        release {
            signingConfig signingConfigs.config
            ...
        }
}

5)AndroidManifest.xml配置应用启动页

注意点:用官方的我没把项目运行起来,搜了一下每个Activity要加一行代码

android:exported = "true"

        <activity
            android:exported = "true"
            android:name="io.dcloud.PandoraEntry"
            android:configChanges="orientation|keyboardHidden|keyboard|navigation"
            android:label="@string/app_name"
            android:launchMode="singleTask"
            android:hardwareAccelerated="true"
            android:theme="@style/TranslucentTheme"
            android:screenOrientation="user"
            android:windowSoftInputMode="adjustResize" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity
            android:exported = "true"
            android:name="io.dcloud.PandoraEntryActivity"
            android:launchMode="singleTask"
            android:configChanges="orientation|keyboardHidden|screenSize|mcc|mnc|fontScale|keyboard|smallestScreenSize|screenLayout|screenSize"
            android:hardwareAccelerated="true"
            android:permission="com.miui.securitycenter.permission.AppPermissionsEditor"
            android:screenOrientation="user"
            android:theme="@style/DCloudTheme"
            android:windowSoftInputMode="adjustResize">
            <intent-filter>
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.BROWSABLE" />
                <action android:name="android.intent.action.VIEW" />
                <data android:scheme="h56131bcf" />
            </intent-filter>
        </activity>

6) 修改应用名(可以放在运行成功之后再返回来搞)

 7)配置应用图标和启动界面(可以放在运行成功之后再返回来搞)

图标设置:

 启动页面:

.9 图片各黑边

  • 左边黑线:垂直拉伸区域,必须要画的
  • 上边黑线:水平拉伸区域,必须要画的
  • 右边黑线:在垂直拉伸的时候,内容显示区域(不是必须要画的)
  • 下边黑线:在水平拉伸的时候,内容显示区域(不是必须要画的)

所以我们的启动页面 准备720*1242尺寸的图,然后只在左边和右边描黑边,最后注意图片放的位置别放错了!!!!!!放的位置是drawable-xhdpi(这个文件夹直接新建就可以了)

具体描黑边的做法:因为准备的尺寸图,大体上符合市面上的机型了,所以我们描黑边,只描要伸展或者缩小的地方,不要描太多,不然为了你的不失真区域,就会把你黑边的地方都给你缩了,就成了局部放大的效果了。(横向多,纵向少)

参考文档:

android启动页底部图案,用一张正方形图片搞定安卓启动页_weixin_39593247的博客-CSDN博客

第六步:HbuilderX 生成本地打包资源

 第七步:Android Studio打包资源配置

1)创建assets文件夹(在Android Studio里创建文件夹,不要直接在文件管理器里创建)

2) 在assets文件夹里创建 apps、data 两个文件夹

 3)把打包的AppID文件名的资源复制粘贴到apps

 4) 把离线打包SDK的SDK里的assets里的data里的三个文件复制粘贴到我们新建的data文件夹

 

 5)修改dcloud_control.xml文件,填写自己uniapp AppID

 第八步:在Android Studio 点击运行

 第九步:如果运行成功,就可以用Android Studio打一个debug版本的包了

第10步:发测试包给其他人员

如何实现扫码下载app_Smallactive的博客-CSDN博客_扫码下载app1. 把自己的应用上传到服务器。这里主要有两种方法。     (1).把apk上传到腾讯开放平台。参考方法:https://jingyan.baidu.com/article/295430f1f612a00c7e0050c3.html      (2)把apk上传到蒲公英应用托管平台https://www.pgyer.com/       两种方法的比较:       第一种方法适...https://blog.csdn.net/qq_41149269/article/details/82917268

第11步:模块及三方SDK配置

如果你的项目有用了第三方:比如地图、支付,你就要在安卓里进行相关SDK配置还有权限配置。

在模块及三方SDK配置之前,我们需要生成自定义基座,来达到app调试的目的,不然你就会觉得我什么都配好了,怎么还是跑不起来,哪出了问题,出了什么问题都不知道。。。。。。

1)生成自定义基座

使用该基座

android——离线打包制作自定义基座 - DCloud问答

  • 9
    点赞
  • 68
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值