uni-app 开发安卓app踩坑记录

uni-app离线打包android —— 官方文档

  1. Android studio打包apk后弹窗提示“打包时未添加ui模块
    在工程应用目录的build.gradle文件中buildTypes下的minifyEnabled设置为false
  2. Android studio打包时报错 “Execution failed for task ‘:app:lintVitalAnalyzeRelease
    在build.gradle中的android代码块中添加如下代码
lintOptions {
    
    
        checkReleaseBuilds false
        // Or, if you prefer, you can continue to check for errors in release builds,
        // but continue the build even when errors are found:
        abortOnError false
}
  1. 使用离线打包自定义调试基座后调用uni.makePhoneCall(),进入success回调但是无法拉起拨打电话权限,也无法进入拨打电话界面
    先检查是否申请了拨打电话权限,
    我在Hbuilderx中manifest.json中勾选了"<uses-permission android:name=\"android.permission.CALL_PHONE\"/>",然后运行,依然无法调用。进入app权限管理界面,也没有拨打电话权限的选项。
    一番查找后才知道,原来是因为我使用的自定义调试基座,那么拨打电话的权限就应该在原生代码中声明,在原生项目中,切换到Android视图,app -> manifest -> AndroidManifest.xml<manifest></manifest>节点中添加<uses-permission android:name="android.permission.CALL_PHONE" />
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    package="com.xx.xx">
    <uses-permission android:name="android.permission.CALL_PHONE" />
</manifest>

其他涉及到权限相关的,也可以参考这一点。

  1. 离线打包 apk 提示当前应用运行在自定义调试基座中,…
    dcloud_control.xml 中将 syncDebug 改为 false 或 去掉就好了
  2. 真机运行时控制台提示请关闭防火墙和代理并重新运行
    退出科学上网软件
  3. 离线打包集成安卓厂商推送时,需要在根目录的build.grade中设置依赖,在buildscript和allprojects节点下的repositories设置maven,然后build就会报错。解决方案:查看grade版本,点击File->Project Structure->Project。高于某个(我也忘了)版本的,需要在根目录的settings.grade的repositories中设置maven

持续更新中…

猜你喜欢

转载自blog.csdn.net/xinTianou123/article/details/126631386