安卓开发常见问题

本文整理了安卓程序常见的开发问题:

字符串文本比较

在轻语言安卓中,如果要比较两个字符串文本或文本变量的值是否相等,不能使用 === 符号,建议使用内置函数:取相等

事件 按钮1.被单击(来源对象 为 视图)
    变量 局_文本1 = "VcnStudio"
    变量 局_文本2 = "VcnStudio2"
    如果(取相等(局_文本1,局_文本2))
        弹出提示("两个文本变量的值相等")
    否则
        弹出提示("两个变量值不相等")
    结束 如果
    ' 也可以使用文本变量的原生函数比较
    如果(局_文本1.equals(局_文本2))
        弹出提示("两个变量值相等")
    结束 如果
    ' 也可以通过常量值比较
    如果(局_文本1 == "VcnStudio")
        弹出提示("两个变量值相等")
    结束 如果
结束 事件

比较两个文本变量值是否相等,只能使用 取相等 函数或使用文本变量的原生函数比较。

修改安卓SDK版本

轻语言安卓框架默认使用的安卓SDK版本为安卓8.0;默认支持的安卓系统最小为安卓5.0;轻语言安卓项目编译输出的APK文件,低于5.0的安卓系统默认无法安装;如果需要兼容低版本或高版本的安装系统,请参考该文章:如何修改安卓项目中的SDK目标版本

初始化获取窗口组件宽高位置为0

在窗口创建完毕中无法正确获取到窗口中指定组件的位置、尺寸值,请参考文章:窗口创建完毕里面如何获取组件宽高和位置的值

安装 APK 失败或解析错误

  • 检查手机或模拟器中是否已经安装有相同包名但签名不同的APP

  • 检查SDK兼容版本是否与系统版本兼容

如何在APP中使用全局字体

参考文章:如何在APP中使用全局自定义字体

批量修改参考界面组件属性

参考文章:在安卓中批量取窗口标签按钮批量修改组件属性

权限问题

在安卓6.0系统及以上的系统中,敏感权限需要在 App.spl 动态申请,常用敏感权限:读取通讯录、使用相机、读写储存卡数据、拨打电话等等。

APP卡顿

检查主线程中是否存在耗时操作,如果有耗时操作,将其放在子线程中执行,常见的耗时操作:访问网络请求、发送POST或GET数据、下载文件、读写大数据文件。