android离线打包[通俗易懂]

android离线打包[通俗易懂]本文章参考官网和其他博客,如有侵权,立即删除官网地址:https://nativesupport.dcloud.net.cn/AppDocs/usesdk/android需要的工具HBuilderX链接:https://www.dcloud.io/hbuilderx.htmlAndroidStudio链接:https://developer.android.google.cn/studio/index.htmlApp离线SDK链接:https://nativesupp…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

本文章参考官网和其他博客,如有侵权,立即删除

 官网地址:原生开发者支持

 需要的工具

HBuilder X 链接:HBuilderX-高效极客技巧

 Android Studio 链接:Download Android Studio and SDK tools  |  Android Developers

App离线SDK 链接:原生开发者支持

 HBuilder X生成本地App资源

 1.创建uni-app模板

android离线打包[通俗易懂]

 2.修改mainfest.json中的基础配置

android离线打包[通俗易懂]

 选择本机打包

android离线打包[通俗易懂]

android离线打包[通俗易懂]

解压Android 离线SDK 

 解压后的项目结构

android离线打包[通俗易懂]

 这里要用到的文件在SDK\asserts\data 下的三个文件 和SDK\libs下的lib.5plus.base-release.aar、android-gif-drawable-release@1.2.23.aar、uniapp-v8-release.aar和oaid_sdk_1.0.25.aar复制一份备用

android离线打包[通俗易懂]

 Android studio离线打包apk环境配置

 1.创建一个空的模板,填写项目的相关信息

android离线打包[通俗易懂]

android离线打包[通俗易懂]

 2.环境配置

android离线打包[通俗易懂]

之后吧libs下的四个文件复制到app\libs下面

android离线打包[通俗易懂]

HBuilderX3.2.5版本之后适配了AndroidX。

AndroidX版本需添加如下资源在app\build.gradle文件中

 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’

 support版本需添加如下资源

 implementation fileTree(dir: ‘libs’, include: [‘*.aar’, ‘*.jar’], exclude: [])
 implementation “com.android.support:support-v4:28.0.0”
 implementation “com.android.support:appcompat-v7:28.0.0”
 implementation ‘com.android.support:recyclerview-v7:28.0.0’
 implementation ‘com.facebook.fresco:fresco:1.13.0’
 implementation “com.facebook.fresco:animated-gif:1.13.0”
 implementation ‘com.github.bumptech.glide:glide:4.9.0’
 implementation ‘com.alibaba:fastjson:1.1.46.android’

 uni-app配置时需要在build.gradle中添加aaptOptions配置

aaptOptions { additionalParameters ‘–auto-add-overlay’ ignoreAssetsPattern “!.svn:!.git:.*:!CVS:!thumbs.db:!picasa.ini:!*.scc:*~” }

android离线打包[通俗易懂]

 将HBuilderX中的项目导出,将导出的资源复制到src->main->assets->apps下,没有assets,apps文件就新建,把离线SDK->assets->data文件夹复制到项目的src->main->assets下,复制后的结构如下

android离线打包[通俗易懂]

修改dcloud_control.xml文件

修改dcloud_control.xml中的appid为拷贝过来的uni-app的id,确保dcloud_control.xml中的appid与manifest.json中的id与文件夹名一致

android离线打包[通俗易懂]

android离线打包[通俗易懂]

同时build.gradle中的版本号和版本名字最好对应Hbuilder X打包的信息

android离线打包[通俗易懂]

 android离线打包[通俗易懂]

  • 配置应用名称

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

配置应用启动页及provider节点

将下述内容添加到Androidmanifest.xml的application节点中

注意:新建的项目默认会有一个MainActivity的节点,必须删掉!

<activity
    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"
    android:exported="true">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>
<activity
    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"
    android:exported="true">
    <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>

Jetbrains全家桶1年46,售后保障稳定

<!--provider节点必须添加-->
<provider
    android:name="io.dcloud.common.util.DCloud_FileProvider"
    android:authorities="${apk.applicationId}.dc.fileprovider"
    android:exported="false"
    android:grantUriPermissions="true">
    <meta-data
        android:name="android.support.FILE_PROVIDER_PATHS"
        android:resource="@xml/dcloud_file_provider" />
</provider>

android离线打包[通俗易懂]

 改完后的

android离线打包[通俗易懂]

配置Appkey

3.1.10版本起需要申请 Appkey,申请请参考

打开Androidmanifest.xml, 导航到Application节点,创建meta-data节点,name为dcloud_appkey,value为申请的AppKey如下:

<application …>

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

登录开发者中心:DCloud开发者中心

android离线打包[通俗易懂]

 点击离线打包可以管理        Android 包名,对应android项目的包名,Android证书签名SHA1,可以自己生成证书,把证书的SHA1复制过来android离线打包[通俗易懂]

 现在我来说两种生成证书的方式:

1,使用android studio工具生成

2,在开发者中心使用应用证书管理生成证书(还不知道有什么安全隐患,建议使用第一种)

 android studio工具

 android离线打包[通俗易懂]

 android离线打包[通俗易懂]

android离线打包[通俗易懂]

 android离线打包[通俗易懂]

 android离线打包[通俗易懂]

 刷新一下就可以看到jks文件

然后就是查看jks文件的SHA1值,利用keytool工具

在命令窗口输入keytool -list -v -keystore canvaskeystore.jks,口令就输入在android studio设置的密码

android离线打包[通俗易懂]

 ​​​​​​​​​​​​​​android离线打包[通俗易懂]

android离线打包[通俗易懂] 

 

 

 开发者中心应用证书管理

 点击创建证书,应用证书创建后由系统生成后方可查看及下载,应用证书生成后会通过邮件告知生成结果,生成证书后的样子

android离线打包[通俗易懂]

 把生成的证书下载,放到项目的app文件夹下,把生成的App key复制到对应的AndroidManifest.xml的位置

android离线打包[通俗易懂]

 最后一步配置文件打包编译

APP的build.gradle文件的android节点下配置如下:

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
            ...
        }
}

 我这里配置的是使用android studio工具生成的证书填写的信息

android离线打包[通俗易懂]

 打包

android离线打包[通俗易懂]

 android离线打包[通俗易懂]

android离线打包[通俗易懂]

android离线打包[通俗易懂]

android离线打包[通俗易懂]

 android离线打包[通俗易懂]

 android离线打包[通俗易懂]

测试运行,配置手机模拟器,运行成功

android离线打包[通俗易懂] 

如果出现appley is not configured or configured incorrectly,

查看原生开发者支持

本文章如有错误,请各位大神赐教

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/230889.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Linux开放指定端口命令

    Linux开放指定端口命令1.方式一1、开启防火墙systemctlstartfirewalld2、开放指定端口(比如1935端口)firewall-cmd–zone=public–add-port=1935/tcp–permanent命令含义:–zone#作用域–add-port=1935/tcp#添加端口,格式为:端口/通讯协议–permanent#永久生效,没有此参数重启后失效3、重启防火墙firewall-cmd–reload4、查看..

    2025年9月27日
    2
  • Python学习之路40-属性描述符

    Python学习之路40-属性描述符Python学习之路40-属性描述符

    2022年4月20日
    46
  • MT4下载怎么下?「建议收藏」

    MT4下载怎么下?「建议收藏」在哪里可以下载到mt4了?个人装了一些像应用宝这类的搜索软件,里面找不到地方下载MT4这个应用软件,怎么样,实际上到百度一搜索就能找到。当输入MT4的时候,会看到下拉框有这么多选择,只需选MT4安卓手机版输入便可`mt4download.cn`搜索出来肯定有很多下载链接,怎样选,正常选第一个搜索主页,【正版】MT4软件【免费下载】来自官网或正规下载网站,切记不要到那类广告网站,会给你电脑安装很多垃圾软件,使系统变得非常慢。点进这个链接后,你就能看到MetaTrader4广受欢迎的软件,根据你手机的操作系

    2022年8月15日
    11
  • 继续安利两个漫画App

    继续安利两个漫画App之前安利了很多漫画App~今天继续,以防被用o(>ω<)o玄猫漫画飒漫画回复“1051”下载玄猫漫画+飒漫画回复666给Yama买一块大白兔…

    2022年6月26日
    30
  • 社会工程学三本_1.9万人报考,扩招近千人!被戏称为“大三本”的985——东南大学,低调有实力!…[通俗易懂]

    社会工程学三本_1.9万人报考,扩招近千人!被戏称为“大三本”的985——东南大学,低调有实力!…[通俗易懂]今天文章的“主角”是东南大学,著名的建筑老八校及原四大工学院之一,国家首批“211工程”、“985工程”、“双一流”A类世界一流大学建设高校。东南大学一流学科:材料科学与工程、电子科学与技术、信息与通信工程、控制科学与工程、计算机科学与技术、建筑学、土木工程、交通运输工程、生物医学工程、风景园林学、艺术学理论。一听到东南大学这个名字,很容易联系到东南电视台,东南汽车,所以东大人就自黑自己是“Hu建…

    2022年6月9日
    96
  • Linux系统终端里的root@localhost变成root@bogon的主机名改变的解决办法

    Linux系统终端里的root@localhost变成root@bogon的主机名改变的解决办法bogon 是主机名利用 hostname 可以查看当前主机名 vi etc sysconfig network 中修改 HOSTNAME 必须重新启动才能生效 Linux 主机名被修改成 bogon 问题的几种解决办法当 Linux 主机名由 myhostname 变成了 bogon 了之后 访问网络就会出现问题 重启后也没有解决 网上搜索 N 久之后 发现了如下几种解决方式 特此记录一下 1 在 linux 下添

    2025年6月8日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号