uni-app如何发布项目为app_2025

参考大佬的:uni-app项目打包成apk(本地打包篇)_uniapp打包apk-CSDN博客

1、导入前配置

在 HBuilder X 中打开uni-app项目中的 mainifest.json 文件,appid没有的话可以点"重新获取"

2、打包

然后关注控制台,导出成功即可(记得这个位置,这个文件需要用到)

3、下载Android离线SDK

Android离线SDK 下载地址:Android离线SDK

4、将HBuilder X导出的文件夹移动到离线SDK中

我的文件目录

D:\app_develop\demo1\test1\unpackage\resources

复制到

D:\app_develop\[email protected]_20250106\[email protected]_20250106\HBuilder-Integrate-AS\simpleDemo\src\main\assets\apps

5、Android Studio 导入项目

如何下载安装:Android Studio 安装配置教程 - Windows(详细版)-CSDN博客

如何汉化:Android Studio 汉化教程_android studio汉化-CSDN博客

(选择第二种方式,ps:导入插件后,建议先创建一个项目进去,进去后汉化才开始,我踩坑的就是在欢迎界面区安装插件,结果一直不汉化,等创建一个项目后就汉化了)

开始导入文件(注意:文件路径中不要出现中文!否则会报错!

6、修改配置

a. 修改dcloud_control.xml 中的 appid

b.记住 applicationId ,后面会用到

7、生成Android证书签名

前提是要配置好jdk:我是学java的,我很早就已经配置了,没有配置的可以参考JDK环境变量配置 - 哔哩哔哩

a. 在 Windows 上,可以使用命令提示符(CMD)

win+R,输入cmd

b. 修改位置的命令:

复制代码
假设目标路径为 D:\app_develop\[email protected]_20250106
输入:
cd /d D:\app_develop\[email protected]_20250106

c. 输入命令:

(建议先改变位置,生成的文件的位置就在你输入这个命令的位置)

keytool -genkeypair -v -keystore my-release-key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias my-key-alias

复制代码
参数说明:
● -keystore my-release-key.jks:指定生成的 Keystore 文件名(如 my-release-key.jks)。
● -keyalg RSA:指定密钥算法为 RSA。
● -keysize 2048:指定密钥长度为 2048 位。
● -validity 10000:指定证书的有效期(单位为天),建议设置为较长的时间(如 10000 天)。
● -alias my-key-alias:指定密钥别名(Alias),用于标识该密钥对。

d. 完善身份

运行上述命令后,系统会提示您输入以下信息:

  1. Keystore 密码:输入并确认 Keystore 文件的密码。

  2. 密钥别名密码:输入并确认密钥别名的密码(可以与 Keystore 密码相同)。

  3. 姓名、组织单位、组织名称等信息:根据提示填写相关信息(这些信息将嵌入到证书中)。

    Enter keystore password: //输入证书文件密码,输入完成回车
    Re-enter new password: //再次输入证书文件密码,输入完成回车
    What is your first and last name?
    [Unknown]: //输入名字和姓氏,输入完成回车
    What is the name of your organizational unit?
    [Unknown]: //输入组织单位名称,输入完成回车
    What is the name of your organization?
    [Unknown]: //输入组织名称,输入完成回车
    What is the name of your City or Locality?
    [Unknown]: //输入城市或区域名称,输入完成回车
    What is the name of your State or Province?
    [Unknown]: //输入省/市/自治区名称,输入完成回车
    What is the two-letter country code for this unit?
    [Unknown]: //输入国家/地区代号(两个字母),中国为CN,输入完成回车
    Is CN=XX, OU=XX, O=XX, L=XX, ST=XX, C=XX correct?
    [no]: //确认上面输入的内容是否正确,输入y,回车

完成后,会在当前目录生成一个 .jks 文件(如 my-release-key.jks)。

注意:要记住这个文件的位置

e. 查看证书记录

复制代码
keytool -list -v -keystore my-release-key.jks
  
Enter keystore password: //输入密码,回车

密码输入是看不见的,输完回车就行;

8、生成appkey

前往 DCLOUD 的开发者中心(网址:开发者中心

然后点击新增就会出现这个画面:

注意

包名:在第六步的b步骤,applicationId

其余三个是在第7步的e不走,复制的那三个;

最后填写完,提交即可

查看key

记住这个App Key

9、在 AndroidManifest.xml 中配置AppKey

这里换成自己的AppKey

10、打包前配置

位置:在第七步的b和c步骤(自己设置的位置)

密码:应该自己知道

keyAlias:第七步的e步骤让复制的那个别名

也可以不用自己手动输入,点击open

改完点击应用再点确定,即可

11、打包apk

文件位置:[email protected]_20250106\[email protected]_20250106\HBuilder-Integrate-AS\simpleDemo\build\outputs\apk\debug

12、使用

这样就可以开始使用了

文件发给手机,手机就能正常使用了

问题报错:未配置appkey或配置错误

参考这个:

申请 | uni小程序SDK

另外一定注意:

复制代码
signingConfigs {
        debug {
            storeFile file('D:\\app_develop\\jks\\ljc-release-key.jks')
            storePassword '123'//换成自己的密码
            keyAlias 'ljc-key-alias'
            keyPassword '123'//换成自己的密码
        }
        config {
            storeFile file('D:\\app_develop\\jks\\ljc-release-key.jks')
            storePassword '123'//换成自己的密码
            keyAlias 'ljc-key-alias'
            keyPassword '123'//换成自己的密码
        }
    }

    buildTypes {
        debug {
            signingConfig signingConfigs.config
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
        config {
            signingConfig signingConfigs.config
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }

13、修改文件后,重新生成app

只需要将第二步的重新打包的文件,替换第四步的文件,然后重启Android Studio,然后进行第十一步骤就可以了;

相关推荐
Monly2120 分钟前
Uniapp:view容器(容器布局)
uni-app
上趣工作室3 小时前
uniapp开发2--uniapp中的条件编译总结
uni-app
@泽栖7 小时前
下载HBuilder X,使用uniapp编写微信小程序
微信小程序·小程序·uni-app
程序员王天10 小时前
Uniapp 自定义TabBar + 动态菜单实现教程(Vuex状态管理详解)
微信小程序·uni-app
卡尔特斯15 小时前
Uniapp 控制台日志工具(DZMUniappConsoleLog)
前端·uni-app
萝卜白菜都是菜15 小时前
uniapp打包app关于获取本机相机、相册、麦克风等权限问题(ios第一次安装权限列表里没有对应权限问题)
uni-app
xixixin_17 小时前
【uniapp】uni.setClipboardData 方法失效 bug 解决方案
java·前端·uni-app
学前端搞口饭吃17 小时前
uniapp打ios包
ios·uni-app
```陪伴17 小时前
uniapp打包IOS私钥证书过期了,如何在非mac系统操作
macos·ios·uni-app
Monly2121 小时前
Uniapp:创建项目
uni-app