Uniapp App离线打包流程(Android、IOS待续)

打印 上一主题 下一主题

主题 518|帖子 518|积分 1554

开发环境:
Visual Studio Code 版本:1.84.2 (非必需,可跳过)
HBuilder X 版本:3.96
Android Studio 版本: 2022.1.1
JDK 版本:11.0.1
Android SDK. 版本:34.0.0

Android 打包流程

官网打包流程:https://nativesupport.dcloud.net.cn/AppDocs/usesdk/android.html)

1)下载Android 离线SDK

温馨提示:网盘下载如龟速,如需要SDK可以加V benjamin19950304
2)申请Appkey

由于uniapp 3.1.10版本起需要申请Appkey,以是我们首先要注册一个 dcloud开发者平台 账号,申请应用,天生Appkey。

2.1)登录开发者背景找到=>应用管理=>我的应用


2.2)创建应用


应用范例:默认选择uni-app
其他参数按需填写

2.3)增加应用平台信息

创建完成之后会回到应用列表,可以看到刚才创建的应用信息。

点击刚才创建好的应用,可以看到应用的详细信息。

找到“各平台信息”标签,左右侧有个“新增”的按钮,创建我们对应应用的平台信息。

所属平台:选择Android App
版本 :如果是发布应用市场,肯定选正式版,其他看本身的需求定。
包名 :根据本身的应用定,例如:com.xxx.xxx
Android 应用署名SHA1值 和 Android 应用署名SHA256 :就是你创建的Android打包署名文件(后缀.jks或者.keystore文件)

2.4)应用署名获取

2.4.1)keytool -v -list -keystore 文件名称.jks


根据JDK版本不同,有效户反馈这种方式获取不到MD5值,如下图,别急,看第三种方式。

2.4.2)AS工具获取,Gradle->app->Tasks->android->signingReport


2.5)天生Appkey


点击创建按钮天生Appkey

到这Appkey就算搞定了,等待备用。
3)Android Studio创建Android项目

File=>New Project

直接创建一个空缺的项目

填写项目名称和包名,直接FInish就可以了

创建完成,你将看到上面的目录结构,然后等待项目build完即可。
4)导入uniapp的离线SDK

解压官方的离线SDK,找到SDK文件夹的libs

找到对应的libs文件
lib.5plus.base-release.aar
android-gif-drawable-release@1.2.23.aar
uniapp-v8-release.aar
oaid_sdk_1.0.25.aar
breakpad-build-release.aar
拷贝到libs目录下

HBuilderX3.2.5版本之后适配了AndroidX。
AndroidX版本需添加如下资源

  1. implementation fileTree(include: ['*.jar'], dir: 'libs')
  2. implementation fileTree(include: ['*.aar'], dir: 'libs')
  3. implementation 'androidx.appcompat:appcompat:1.6.1'
  4. implementation 'androidx.legacy:legacy-support-v4:1.0.0'
  5. implementation 'androidx.recyclerview:recyclerview:1.0.0'
  6. implementation 'com.facebook.fresco:fresco:2.5.0'
  7. implementation "com.facebook.fresco:animated-gif:2.5.0"
  8. implementation 'com.github.bumptech.glide:glide:4.9.0'
  9. implementation 'com.alibaba:fastjson:1.2.83'
  10. implementation 'androidx.webkit:webkit:1.3.0'
复制代码
  1.   aaptOptions {
  2.         additionalParameters '--auto-add-overlay'
  3.         ignoreAssetsPattern "!.svn:!.git:.*:!CVS:!thumbs.db:!picasa.ini:!*.scc:*~"
  4.     }
复制代码
点击右上角的Sync New按钮同步更新

找到项目的AndroidManifest.xml文件,把如下配置放到<application>节点下
  1. <activity
  2.             android:name="io.dcloud.PandoraEntry"
  3.             android:configChanges="orientation|keyboardHidden|keyboard|navigation"
  4.             android:hardwareAccelerated="true"
  5.             android:label="@string/app_name"
  6.             android:launchMode="singleTask"
  7.             android:screenOrientation="user"
  8.             android:theme="@style/TranslucentTheme"
  9.             android:windowSoftInputMode="adjustResize"
  10.             android:exported="true">
  11.             <intent-filter>
  12.                 <action android:name="android.intent.action.MAIN" />
  13.                 <category android:name="android.intent.category.LAUNCHER" />
  14.             </intent-filter>
  15.         </activity>
  16.         <activity
  17.             android:name="io.dcloud.PandoraEntryActivity"
  18.             android:configChanges="orientation|keyboardHidden|screenSize|mcc|mnc|fontScale|keyboard|smallestScreenSize|screenLayout|screenSize|uiMode"
  19.             android:hardwareAccelerated="true"
  20.             android:launchMode="singleTask"
  21.             android:permission="com.miui.securitycenter.permission.AppPermissionsEditor"
  22.             android:screenOrientation="user"
  23.             android:theme="@style/DCloudTheme"
  24.             android:windowSoftInputMode="adjustResize"
  25.             android:exported="true">
  26.             <intent-filter>
  27.                 <category android:name="android.intent.category.DEFAULT" />
  28.                 <category android:name="android.intent.category.BROWSABLE" />
  29.                 <action android:name="android.intent.action.VIEW" />
  30.                 <data android:scheme=" " />
  31.             </intent-filter>
  32.         </activity>
  33.         <meta-data
  34.             android:name="dcloud_appkey"
  35.             android:value="申请的Appkty" />
复制代码
按照以上配置,并在meta-data节点下添加前面申请的Appkey即可。
5)天生app资源

如果你也是用Visual Studio Code开发的项目,那就按照完备步骤走,如果不是,直接跳到HBuilder X打包流程。
5.1)Visual Studio Code打包HBuilder X编译文件


如果你是yarn
  1. yarn build:app
复制代码
如果你是npm
  1. npm run build:app
复制代码
之后找到dist=>build=>app文件,这个就是我们需要的文件了。
5.2)HBuilder X导入项目


项目导入之后,我们配置一下manifest.json文件

应用标识,也就是AppID,在前面申请Appkey创建应用的时候就已经天生了

复制AppID到HBuilder X工程即可运行项目。
5.3)天生app打包资源


接下来会天生一个和我们AppID定名的文件夹

这个就是我们需要的app打包资源了。
6)导入uniapp工程下天生的app资源包

将我们在HBuilder X天生的app资源包,导入Android Studio工程

把SDK的assets文件夹复制到Android Studio工程app=>src=>main下面。

接着创建一个apps文件夹,存放HBuilder X天生app文件的。

修改dcloud_control.xml文件配置,也就是把我门的AppID放上去即可。
到这里着实你已经可以运行并打包apk文件了
7)打包APK文件



如果你是国内市场,选择APK就可以了,想要上Google Play就选择Android App Bundle然后点击Next

这里的打包署名文件就是前面创建Appkey天生的Android打包署名文件(后缀.jks或者.keystore文件)

填写完署名信息后,点击Next,选择release正式包Create即可

这个app-release.apk就是我们需要的文件了,可以提交到应用市场的文件。
需要特别注意的是,如果你上传Google Play的应用市场,Google Pla会对你的apk文件举行二次署名,以是也会导致你的应用提示Appkey失败的类似题目,以是需要在Google Play背景找到署名文件的SHA1和SHA256重新天生新的Appkey,然后再打包aab文件提交即可。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

天津储鑫盛钢材现货供应商

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表