IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 移动开发 -> android离线打包 -> 正文阅读

[移动开发]android离线打包

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

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

?需要的工具

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

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

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

?HBuilder X生成本地App资源

?1.创建uni-app模板

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

?选择本机打包

解压Android 离线SDK?

?解压后的项目结构

?这里要用到的文件在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 studio离线打包apk环境配置

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

?2.环境配置

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

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:*~" }

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

修改dcloud_control.xml文件

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

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

?

  • 配置应用名称

    打开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>
<!--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>

?改完后的

配置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证书签名SHA1,可以自己生成证书,把证书的SHA1复制过来

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

1,使用android studio工具生成

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

?android studio工具

?

?

?

?

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

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

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

???????????????

?

?

?

?开发者中心应用证书管理

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

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

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

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工具生成的证书填写的信息

?打包

?

?

?

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

?

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

查看原生开发者支持

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

  移动开发 最新文章
Vue3装载axios和element-ui
android adb cmd
【xcode】Xcode常用快捷键与技巧
Android开发中的线程池使用
Java 和 Android 的 Base64
Android 测试文字编码格式
微信小程序支付
安卓权限记录
知乎之自动养号
【Android Jetpack】DataStore
上一篇文章      下一篇文章      查看所有文章
加:2021-10-29 13:09:42  更:2021-10-29 13:11:08 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 1:20:38-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码