美文网首页Android studio【idea】Android开发知识小集Android
Android 开发中遇到的一些小问题 (持续更新)

Android 开发中遇到的一些小问题 (持续更新)

作者: EvanZch | 来源:发表于2018-09-21 16:00 被阅读84次

    记录个人在开发中遇到的一些小问题,持续更新!

    1、Android Studio中的Button英文文本全部显示为大写

    添加属性 android:textAllCaps="false"

    2、android.net.conn.CONNECTIVITY_CHANGE 7.0后静态注册无效

    以前项目中使用完全没问题,后来自己在一个新项目中使用的时候发现一直没有回调,折腾了半天,自己还写了Demo,分别静态注册和动态注册,奇怪的是发现动态注册完全没有问题,静态注册却没有回调,后来发现官方在7.0后取消了 android.net.conn.CONNECTIVITY_CHANGE 的静态注册。

    官方应该是考虑到电量优化,在Android N 后取消了CONNECTIVITY_ACTION 的静态注册,动态注册没有影响。

    如果你的 targetSdkVersion 值大于等于24,那么静态注册 CONNECTIVITY_ACTION 就不会执行回调,官方建议

    使用 JobSchedulerGcmNetworkManager 对网络进行优化。

    3、导入项目Androidstudio报 Error:前言中不允许有内容。

    新建项目,查看Project下的build.gradle中gradle使用的版本号,修改导入项目的gradle版本号,修改成和新建版本号一致就可以了。


    在某些情况下,可能还要改gradle-wrapper.properties 文件夹下distributionUrl的值,跟新建项目一致就ok了。

    4、Could not resolve all files for configuration ':classpath' Could not find com.android.tools.build:gradle:3.1.2.

    导入别人项目时候遇到问题,如下图:


    处理办法:
    在Project下的 'build.gradle' 下作如下修改:


    5、Retrofit + rxjava 返回数据为空

    @GET("/api/gateways")
    Observable<JsonObject> getGateway(@Query("limit") int  number);
    

    这里要注意 com.google.gson.JsonObjectorg.json.JSONObject

    选择 com.google.gson.JsonObject 返回数据

    org.json.JSONObject 返回数据为空

    6、am start -a android.intent.action.MAIN -n de.blinkt.openvpn/.LaunchVPN -e de.blinkt.openvpn.shortcutProfileName Home

    启动 activity格式:

    adb shell am start -n 包名/包名+类名(-n 类名,-a action,-d date,-m MIME-TYPE,-c category,-e 扩展数据,等)。

    实例2:(带extra 的 intent)

    am start -n com.android.camera/.Camera -e abc hello
    

    Starting: Intent { cmp=com.android.camera/.Camera (has extras) }

    其中 extra 的 key 为 abc ,value 为字串 "hello"

    7、Android dependency 'com.android.support:appcompat-v7' has different version for the compile (25.3.1) and runtime (27.1.1) classpath. You should manually set the same version via DependencyResolution

    原因:有些三方库里面引入的库和本地库文件冲突,需要统一版本

    处理:

    subprojects {
        project.configurations.all {
            resolutionStrategy.eachDependency { details ->
                if (details.requested.group == 'com.android.support'
                        && !details.requested.name.contains('multidex') ) {
                    //统一版本号(版本号根据实际情况填写)
                    details.useVersion "27.1.1"
                }
            }
        }
    }
    

    相关文章

      网友评论

        本文标题:Android 开发中遇到的一些小问题 (持续更新)

        本文链接:https://www.haomeiwen.com/subject/gtqanftx.html