美文网首页Android知识Android技术知识Android开发
Android开发问题集锦(2019.02.15更新)

Android开发问题集锦(2019.02.15更新)

作者: Cosecant | 来源:发表于2017-04-25 14:33 被阅读42次
    1. 生成类库的jar文件

    ​ 通常情况下,我们需要把一个类库打包成一个Jar文件,而不是aar文件,因此我们需要对app.gradle进行修改,如下所示:

    task makeJar(type: Copy){
        delete 'build/libs/CrashCatcher.jar'
        from('build/intermediates/bundles/release/')
        into('build/libs')
        include('classes.jar')
        rename('classes.jar', 'CrashCatcher.jar')
    }
    
    makeJar.dependsOn(build)
    

    ​ 配置好后,即可通过gradle生成我们想要的jar文件。

    1. 如何处理Linux不能启用AVD的问题?

    First, install some packages and libs:
    $ sudo apt-get install lib64stdc++6:i386
    $ sudo apt-get install mesa-utils

    Second, tweak some links:
    $ cd YOURPATH/Android/Sdk/tools/lib64
    $ mv libstdc++/ libstdc++.bak
    $ ln -s /usr/lib64/libstdc++.so.6 libstdc++
    Third, relaunch your AVD device and test it.

    3.遇到异常【A problem occurred starting process 'command 'E:\Tools\sdk\ndk-bundle\toolchains\mips64el-linux-android-4.9\prebuilt\windows-x86_64\bin\mips64el-linux-android-strip''】处理办法 , windows下异常

    处理办法:修改项目根目录的local.properties文件中ndk.dir的值,
    如下,原值是:

    ndk.dir=E\:\\Tools\\sdk\\ndk-bundle
    

    修改为:

    ndk.dir=E\:\\Tools\\sdk\\ndk-bundle.cmd
    

    再次编辑即可正常,但是可能下次进入项目时还会报一样的错误,同样处理即可!

    1. 网络安全配置, 有时候我们可能会网络不可访问的时候,可以进行一下配置

    在Manifest.xml中的Application节点中配置network_security_config:

    android:networkSecurityConfig="@xml/network_security_config"
    

    配置文件(network_security_config.xml)内容如下:

    <?xml version="1.0" encoding="utf-8"?>
    <network-security-config>
        <base-config cleartextTrafficPermitted="true" />
    </network-security-config>
    
    1. Android 9.0的WebView打开URL页面,报错:ERR_CLEARTEXT_NOT_PERMITTED

    需要在Manifest.xml中的Application节点中配置属性:

    <?xml version="1.0" encoding="utf-8"?>
    <manifest ...>
        <uses-permission android:name="android.permission.INTERNET" />
        <application
            ...
            android:usesCleartextTraffic="true"
            ...>
            ...
        </application>
    </manifest>
    
    1. 32位SO库与64位SO库不匹配时,又不能找到64位SO库,只能去掉64位SO库的引用,以免运行时报错,所以做一下处理
    android {
          ........
           packagingOptions {
            exclude 'lib/arm64-v8a/*'
           }
            ........
    }
    
    1. 处理Linux系统上出现的/dev/kvm权限问题

    当我们想要运行模拟器的时候,出现以上问题,该怎么处理呢?首先我们先查看一下/dev/kvm所在权限组:

    ls -l /dev/kvm
    

    我们可能会得到类似于这样的结果:
    crw-rw---- 1 root kvm 10, 232 2月 15 09:22 /dev/kvm
    就结果而看,我们的/dev/kvm属于root用户的kvm组

    怎么把当前用户加入kvm组呢?首先安装一个软件:

    sudo apt install qemu-kvm
    

    执行安装完成后,我们添加用户到组

    sudo adduser UserName kvm
    

    添加完成后即可,然后重启电脑!
    Enjoy yourself !

    相关文章

      网友评论

        本文标题:Android开发问题集锦(2019.02.15更新)

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