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 小米 华为 单反 装机 图拉丁
 
   -> 移动开发 -> AndroidStudio离线打包muiH5+app -> 正文阅读

[移动开发]AndroidStudio离线打包muiH5+app

1.安装Androidstudio

2.安装相关版本sdk

3.下载dcloud官方提供的sdk并解压.

4.androidstudio中导入HBuilder-Integrate-AS作为参考.

5.在andrioidstudio新建一个空项目,项目路径要建好,在后面配置中会使用,例如:com.zhuye.h5bank

6.在libs中导入所需jar包,可以从导入的demo中复制

android-gif-drawable-release@1.2.23.aar fastjson-1.2.78.jar lib.5plus.base-release.aar oaid_sdk_1.0.25.aar

7.在项目中main目录下创建apps文件夹:

H5Bank\app\src\main\assets\apps\项目appid(可以从dcloud官网控制台获取或mui项目的manifest.json中获取)\www\ (把mui项目粘进来除了unpackage目录)

8.在项目中main目录下创建data文件夹:

H5Bank\app\src\main\assets\data 并放入文件(可以从导入的demo中复制)

dcloud_control.xml dcloud_error.html dcloud_properties.xml

dcloud_control.xml中增加如下代码,appid根据实际项目获取

<apps>
 ?  <app appid="H50F96945" appver=""/>
</apps>

9.AndroidManifest.xml 配置权限

10.AndroidManifest.xml配置dcloud_appkey,该key需要去官网控制台申请.

key生成参考: Android平台签名证书(.keystore)生成指南 - DCloud问答

key申请参考:

原生开发者支持

生成命令: keytool -genkey -alias testalias -keyalg RSA -keysize 2048 -validity 36500 -keystore test.keystore 查看命令: keytool -list -v -keystore test.keystore key存储位置: C:\Program Files\Java\jre1.8.0_65\bin

key名称尽量与项目名称保持一致.

生成的key文件放到app目录下

在AndroidManifest.xml中application标签内增加key配置到码如下:

<provider
 ?  android:name="io.dcloud.common.util.DCloud_FileProvider"
 ?  android:authorities="{applicationId}.FileProvider"
 ?  android:exported="false"
 ?  android:grantUriPermissions="true">
 ?  <meta-data
 ? ? ?  android:name="android.support.FILE_PROVIDER_PATHS"
 ? ? ?  android:resource="@xml/dcloud_file_provider" />
</provider>
<meta-data
 ?  android:name="dcloud_appkey"
 ?  android:value="26c5e563e23c16c863db60c001658b9b" />

name:dcloud_appkey保持不变value从控制台生成后粘贴

11.签名信息配置

在build.gradle中配置签名信息如下:

signingConfigs {
 ?  config {
 ? ? ?  keyAlias 'testalias'
 ? ? ?  keyPassword '666666'
 ? ? ?  storeFile file('hello_login.keystore')
 ? ? ?  storePassword '666666'
 ? ? ?  v1SigningEnabled true
 ? ? ?  v2SigningEnabled true
 ?  }
}
?
buildTypes {
 ?  debug {
 ? ? ?  signingConfig signingConfigs.config
 ? ? ?  minifyEnabled false
 ? ? ?  proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
 ?  }
 ?  release {
 ? ? ?  signingConfig signingConfigs.config
 ? ? ?  minifyEnabled false
 ? ? ?  proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
 ?  }
}

12.导入的jar包如果读取不到在build.gradle中导入如下代码

dependencies {
 ?  implementation fileTree(dir: 'libs', include: ['*.aar', '*.jar'], exclude: [])
 ?  implementation 'androidx.appcompat:appcompat:1.1.0'
 ?  implementation 'com.google.android.material:material:1.1.0'
 ?  implementation 'com.android.support:support-v4:30.4.1'
 ?  testImplementation 'junit:junit:4.+'
 ?  androidTestImplementation 'androidx.test.ext:junit:1.1.1'
 ?  androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
 ?  compile 'com.nineoldandroids:library:2.4.0'
 ?  compile 'com.github.bumptech.glide:glide:3.7.0'
}

13.build.gradle代码整体参考:

plugins {
 ?  id 'com.android.application'
}
?
android {
 ?  compileSdkVersion 30
 ?  buildToolsVersion "30.0.2"
?
 ?  defaultConfig {
 ? ? ?  applicationId "com.zhuye.h5bank"
 ? ? ?  minSdkVersion 21
 ? ? ?  targetSdkVersion 30
 ? ? ?  versionCode 1
 ? ? ?  versionName "1.0"
?
 ? ? ?  testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
 ?  }
?
?
 ?  signingConfigs {
 ? ? ?  config {
 ? ? ? ? ?  keyAlias 'testalias'
 ? ? ? ? ?  keyPassword '666666'
 ? ? ? ? ?  storeFile file('hello_login.keystore')
 ? ? ? ? ?  storePassword '666666'
 ? ? ? ? ?  v1SigningEnabled true
 ? ? ? ? ?  v2SigningEnabled true
 ? ? ?  }
 ?  }
?
 ?  buildTypes {
 ? ? ?  debug {
 ? ? ? ? ?  signingConfig signingConfigs.config
 ? ? ? ? ?  minifyEnabled false
 ? ? ? ? ?  proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
 ? ? ?  }
 ? ? ?  release {
 ? ? ? ? ?  signingConfig signingConfigs.config
 ? ? ? ? ?  minifyEnabled false
 ? ? ? ? ?  proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
 ? ? ?  }
 ?  }
 ?  compileOptions {
 ? ? ?  sourceCompatibility JavaVersion.VERSION_1_8
 ? ? ?  targetCompatibility JavaVersion.VERSION_1_8
 ?  }
}
repositories {
 ?  flatDir {
 ? ? ?  dirs 'libs'
 ?  }
}
dependencies {
 ?  implementation fileTree(dir: 'libs', include: ['*.aar', '*.jar'], exclude: [])
 ?  implementation 'androidx.appcompat:appcompat:1.1.0'
 ?  implementation 'com.google.android.material:material:1.1.0'
 ?  implementation 'com.android.support:support-v4:30.4.1'
 ?  testImplementation 'junit:junit:4.+'
 ?  androidTestImplementation 'androidx.test.ext:junit:1.1.1'
 ?  androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
 ?  compile 'com.nineoldandroids:library:2.4.0'
 ?  compile 'com.github.bumptech.glide:glide:3.7.0'
}

14.AndroidManifest.xml整体代码参考:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
 ?  package="com.zhuye.h5bank"
 ?  xmlns:tools="http://schemas.android.com/tools"
 ?  >
?
 ?  <application
 ? ? ?  android:name="io.dcloud.application.DCloudApplication"
 ? ? ?  android:allowClearUserData="true"
 ? ? ?  android:label="@string/app_name"
 ? ? ?  android:largeHeap="true" >
 ? ? ?  <activity
 ? ? ? ? ?  android:name="io.dcloud.PandoraEntry"
 ? ? ? ? ?  android:configChanges="orientation|keyboardHidden|keyboard|navigation"
 ? ? ? ? ?  android:hardwareAccelerated="true"
 ? ? ? ? ?  android:label="@string/app_name"
 ? ? ? ? ?  android:launchMode="singleTask"
 ? ? ? ? ?  android:screenOrientation="user"
 ? ? ? ? ?  android:theme="@style/TranslucentTheme"
 ? ? ? ? ?  android:windowSoftInputMode="adjustResize" >
 ? ? ? ? ?  <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:configChanges="orientation|keyboardHidden|screenSize|keyboard|navigation|mcc|mnc|fontScale"
 ? ? ? ? ?  android:hardwareAccelerated="true"
 ? ? ? ? ?  android:label="5+Debug"
 ? ? ? ? ?  android:launchMode="singleTask"
 ? ? ? ? ?  android:screenOrientation="user"
 ? ? ? ? ?  android:theme="@style/DCloudTheme"
 ? ? ? ? ?  android:windowSoftInputMode="adjustResize" >
 ? ? ?  </activity>
 ? ? ?  <service
 ? ? ? ? ?  android:name="io.dcloud.common.adapter.io.MiniServerService"
 ? ? ? ? ?  android:exported="true" />
 ? ? ?  <provider
 ? ? ? ? ?  android:name="io.dcloud.common.util.DCloud_FileProvider"
 ? ? ? ? ?  android:authorities="{applicationId}.FileProvider"
 ? ? ? ? ?  android:exported="false"
 ? ? ? ? ?  android:grantUriPermissions="true">
 ? ? ? ? ?  <meta-data
 ? ? ? ? ? ? ?  android:name="android.support.FILE_PROVIDER_PATHS"
 ? ? ? ? ? ? ?  android:resource="@xml/dcloud_file_provider" />
 ? ? ?  </provider>
 ? ? ?  <meta-data
 ? ? ? ? ?  android:name="dcloud_appkey"
 ? ? ? ? ?  android:value="26c5e563e23c16c863db60c001658b9b" />
 ?  </application>
?
 ?  <supports-screens
 ? ? ?  android:anyDensity="true"
 ? ? ?  android:largeScreens="true"
 ? ? ?  android:normalScreens="true"
 ? ? ?  android:resizeable="true"
 ? ? ?  android:smallScreens="true" />
 ?  <uses-permission android:name="android.permission.INTERNET" />
 ?  <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
 ?  <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"/>
 ?  <uses-feature android:name="android.hardware.camera"/>",
 ?  <uses-feature android:name="android.hardware.camera.autofocus"/>",
 ?  <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>",
 ?  <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>",
 ?  <uses-permission android:name="android.permission.BLUETOOTH"/>",
 ?  <uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>",
 ?  <uses-permission android:name="android.permission.CAMERA"/>",
 ?  <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"/>",
 ?  <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>",
 ?  <uses-permission android:name="android.permission.INTERNET"/>",
 ?  <uses-permission android:name="android.permission.READ_PHONE_STATE"/>",
 ?  <uses-permission android:name="android.permission.VIBRATE"/>",
 ?  <uses-permission android:name="android.permission.BLUETOOTH"/>",
 ?  <uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>"
</manifest>
  移动开发 最新文章
Vue3装载axios和element-ui
android adb cmd
【xcode】Xcode常用快捷键与技巧
Android开发中的线程池使用
Java 和 Android 的 Base64
Android 测试文字编码格式
微信小程序支付
安卓权限记录
知乎之自动养号
【Android Jetpack】DataStore
上一篇文章      下一篇文章      查看所有文章
加:2021-11-26 08:57:51  更:2021-11-26 09:00:03 
 
开发: 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 6:07:34-

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