• Ubuntu18.04下的 Android Studio 3.1.2


    Android Studio安装

    参考官网上的安装说明

    # 安装依赖
    sudo apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386 lib32z1 libbz2-1.0:i386

    安装openjdk (Update 2018-08-21: 这次重装Ubuntu18.04.1后, 仅仅设置了java, javac的软链, 没有安装openjdk, 也可以正常启动android studio)

    sudo apt-get install openjdk-8-jdk

    解压缩后运行 bin/studio.sh 会自动安装, 但是不会自动创建应用图标, 需要自己创建

    安装过程中SDK Manager需要下载指定版本的Android Platform, 以及SDK Tools, 现在下载速度非常快了. 之后才能创建项目

    创建图标

    在路径 /usr/share/applications下创建.desktop文件, 内容如下

    /usr/share/applications$ sudo vi android-studio.desktop
    
    [Desktop Entry]
    Version=1.0
    Type=Application
    Name=Android Studio
    Icon=/opt/google/android-studio/bin/studio.png
    Exec="/opt/google/android-studio/bin/studio.sh" %f
    Comment=The Drive to Develop
    Categories=Development;IDE;
    Terminal=false
    StartupWMClass=jetbrains-studio

    对于最后一个参数StartupWMClass的值, 如果未正确设置的话, 在导航栏里的图标会不能和运行中的实例正常关联, 运行时会同时显示两个图标. 关于如何获取这个参数值, 参考这个说明 https://askubuntu.com/questions/367396/what-represent-the-startupwmclass-field-of-a-desktop-file   可以通过xprop WM_CLASS命令查看

    Modern Linux desktop environments (Gnome 3, Ubuntu Unity, Docky) use the WMClass property to associate windows with the owning application. Many Java-based applications have the problem where the windows created by the application are not associated with the shortcut used to start the application (so the dock contains multiple copies of the same icon).
    So the field called StartupWMClass is a string that defines in which class the application is grouped in the Unity Launcher at startup. You can find out which WM_CLASS your window has got when you type in a terminal, and then click at the window. The output is as follows:

    $ xprop WM_CLASS
    WM_CLASS(STRING) = "sun-awt-X11-XFramePeer", "jetbrains-studio"

    创建并编译空白项目

    项目初次Sync时容易失败, 一些依赖包总是下载错误, 这时候需要检查一下 home目录下的 .gradle/gradle.properties文件, 是否这里设置了错误的代理. 这个在studio的settings里面是看不到的.

    在物理设备上run空白项目

    报udev相关的permission错误时, 会建议你安装  sudo apt install android-tools-adb 但是这个貌似不起作用, 命令行执行 adb devices依然报permissions不足, 后来通过在/etc/udev/rules.d/ 下增加如下内容的文件 51-android.rules, 才解决问题. 重新插拔手机后, adb devices能看到设备了

    SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", MODE:="0666"

    创建虚拟设备运行项目

    在AVD管理器中创建虚拟设备时, 出现提示 /dev/kvm device: permission denied . 这是因为当前用户不在kvm组里的原因, 在Ubuntu18.04下解决方式如下:

    # 首先, 安装 qemu-kvm
    sudo apt install qemu-kvm
    # 查看 /dev/kvm的权限和用户组, 如果安装过了qemu-kvm, 这个设备的组应该就会变成kvm
    ls -al /dev/kvm
    # 检查当前用户的组, 查看系统里存在的组
    id
    more /etc/group
    # 如果kvm组已经存在, 将当前用户加入kvm组
    sudo gpasswd -a milton kvm
    # 查看是否已经加入, 用户会被附加在组名后面
    more /etc/group

    打开华为安卓手机的日志输出

    华为的安卓手机默认不输出INFO级别以下的日志, 需要手动打开, 方法是拨号面板上输入 *#*#2846579#*#* 进入工程模式后, 在LOG设置中, 勾选所有的输出.
    若是小米4.0系统(MIUI),进入“设置-->全部设置-->原厂设置-->工程模式”

  • 相关阅读:
    idou老师教你学Istio 19 : Istio 流量治理功能原理与实战
    面对runc逃逸漏洞,华为云容器为您保驾护航
    idou老师教你学Istio 18 : 如何用istio实现应用的灰度发布
    idou老师教你学Istio 17 : 通过HTTPS进行双向TLS传输
    idou老师教你学Istio 16:如何用 Istio 实现微服务间的访问控制
    idou老师教你学Istio 15:Istio实现双向TLS的迁移
    极简容器化交付 | 部署组件分析
    idou老师教你学Istio 14:如何用K8S对Istio Service进行流量健康检查
    Hibernate5笔记9--Hibernate注解式开发
    Hibernate5笔记8--Hibernate事务相关内容
  • 原文地址:https://www.cnblogs.com/milton/p/9339415.html
Copyright © 2020-2023  润新知