uniapp离线sdk及Android Studio下载地址:https://nativesupport.dcloud.net.cn/AppDocs/usesdk/android
一、打包本地项目
菜单:发行->原生App-本地打包->生成本地打包App资源
二、配置
1、导入官方 demo 到 Android Studio
2、删除 " HBuilder-Integrate-AS\simpleDemo\src\main\assets\apps "下的所有文件,并打本地打包的项目放入到apps下
3、配置appid
路径:HBuilder-Integrate-AS\simpleDemo\src\main\assets\data\dcloud_control.xml
4、生成证书 https://ask.dcloud.net.cn/article/35777
5、配置证书;打开 simpleDemo/build.gradle 文件
defaultConfig {
applicationId "com.demo.test" //包名 默认不是这个,我自定义的
minSdkVersion 21
targetSdkVersion 29 //默认是28,不过我这提示版本低,控制台提示改成 29
versionCode 1
versionName "1.0"
multiDexEnabled true
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
signingConfigs {
config {
keyAlias 'cashier'//别名
keyPassword '111111'//密码
storeFile file('cashier.jks')//证书 最好放在跟当前文件同一目录下
storePassword '111111'//密码 最好跟keyPassword同步 避免犯错
v1SigningEnabled true
v2SigningEnabled true
}
}
6、配置appid (不配置会报错:未配置appkey或配置错误)
登录uni开发者中心 https://dev.dcloud.net.cn/app/
7、配置权限 切换到andioid下,然后打开 AndroidManifest.xml
<!-- 相机 -->
<uses-feature android:name="android.hardware.camera"/>
<!-- 自动对焦-->
<uses-feature android:name="android.hardware.camera.autofocus"/>
<!-- 打开相机权限 -->
<uses-permission android:name="android.permission.CAMERA"/>
<!-- 联网权限 -->
<uses-permission android:name="android.permission.INTERNET" />
<!-- 外部存储读写权限 -->
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<!--获取运营商信息,用于支持提供运营商信息相关的接口-->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<!--用于访问wifi网络信息,wifi信息会用于进行网络定位-->
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<!--这个权限用于获取wifi的获取权限,wifi信息会用来进行网络定位-->
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<!--用于进行网络定位-->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<!-- 可以提高室内定位的精确度 -->
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
<!-- 可以提高室内定位的精确度 -->
<uses-permission android:name="android.permission.BLUETOOTH" />
<!--用于访问GPS定位-->
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<!--用于提高GPS定位速度-->
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
<!--如果设置了target >= 28 如果需要启动后台定位则必须声明这个权限-->
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
<!--如果您的应用需要后台定位权限,且有可能运行在Android Q设备上,并且设置了target>28,必须增加这个权限声明-->
<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" />
<!-- 拨打电话 -->
<uses-permission android:name="android.permission.CALL_PHONE" />
<!--不弹出通知栏权限-->
<uses-permission android:name="android.permission.DOWNLOAD_WITHOUT_NOTIFICATION" />
<!-- 用户手机设置中允许未知来源安装包安装状态为关;-->
<!-- Android8.0 以后,如果要安装 apk 需要额外添加权限:-->
<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES" />
三、启动(前提本机有模拟器或者连接了真机)
四、打包
打包前的检查及修改
每次改变versionName版本号,versionCode就要加1(versionCode只能是int类型)示例:versionName为1.1,那么versionCode就是2;
开始打包
打包后的apk在 simpleDemo\release文件夹下
全剧终...
......持续更新中......