Ubuntu下Android开发小技巧(不断更新中)

  • 使用AS 下载jar 包时 会遇到部分jar 无法下载,可以试着讲jcenter()改成mavenCentral()
  • AS两下shift 试下可以搜出什么文件
  • AS ctrl+shift+R 打开文件 可以模糊打开项目中的文件 将源码导入as 看代码 这个就显得很实用了
  • AS 还有挺多插件提高工作效率
    http://rance935.com/blog/?p=112
  • 制作keystore
    将alps/build/target/product/security 两个文件拷贝到新建目录


    image.png

使用上面两个文件来生成keysotre。按照如下步骤进行生成:
生成platform.pem
openssl pkcs8 -inform DER -nocrypt -in platform.pk8 -out platform.pem
生成platform.pk12
openssl pkcs12 -export -in platform.x509.pem -out platform.p12 -inkey platform.pem -password pass:android -name androiddebugkey
生成keystore文件
keytool -importkeystore -deststorepass android -destkeystore ./platform.keystore -srckeystore ./platform.p12 -srcstoretype PKCS12 -srcstorepass android

三个步骤下来就可以生成platform.keystore

image.png

生成之后就可以替换掉用户名下面.android文件夹debug.keystore 
如果看不到.开头文件 ctrl+h就可以出来 as直接运行的apk就只带平台签名了。

两个秘钥都是android

alias 是androiddebugkey

  • Android Studio 支持C/C++ 提示 今天用Android studio 新建了个ndk 开发的jni demo,发现这个demo尽然有C++提示。原来是在build.gradle 添加了ndk的支持。
    注意有两个地方


    image.png
image.png
  • ubuntu 下sublime 字体和间距显得有点接受不了,整了下发现package control 也安装不上,直接用微软的VS code 将其取代,发现VS code 还挺好用的颜色拓展程序在线找,真心多 总有一款你会喜欢。
  • ubuntu 下安装搜狗输入法 在终端中输入:fcitx-config-gtk3 添加语言 记得取消Only Show Current 不然添加不了 添加英文键盘和搜狗pingyi 就可以使用了。
  • ubuntu 下网易云音乐 跟深度合作的良心产品,看代码时候可以听听歌了
  • wine 这个也是挺好用的,添加完不影响系统代码编译,还能用一些exe 工具,什么source insight ,jd-jui,mtk dct等

image.png

我的AS 配色 其实看多了也就舒服了,再写上几个demo 就看习惯了,也就舒服了,慢慢用会习惯的
 附上下载地址
https://github.com/sengeiou/AndroidLearnNotes/tree/master/AndroidStudioSettingsFile

  • ubuntu 中Eclipse 字体间距不是没有win下的感觉  
    具体操作办法:
    Windows->Preferences->General->Apperence->Colors and Fonts->basic->Text Font,然后点击edit按钮,在弹出的字体选择框中选择DejaVu Sans Mono字体。
    src 右键 format codes

  • sublime具体操作方法:
    

    preferences->Settings-User
    填入:
    "color_scheme": "Packages/Color Scheme - Default/Solarized (Dark).tmTheme",
    "font_face": "DejaVu Sans Mono",
    "font_size": 12,
    "highlight_line":true
    解决sublime 中文无法输入问题
    http://www.jianshu.com/p/bf05fb3a4709

  • ubuntu 截图快捷键

image.png
  • vs codes 显示像sublime 右侧代码导航栏 
    文件>首选项>设置 会打开settings.json 文件编辑
    左侧为修改参照有中文注释,还可以搜索, 右侧则是要覆盖修改的地方
    添加在开头"editor.minimap.enabled": true, 即可
    image.png

    参考:
    http://blog.csdn.net/S_gy_Zetrov/article/details/70388922
  • ubuntu 设置豆沙绿

cd /usr/share/themes/Ambiance/gtk-3.0/
sudo cp gtk-main.css gtk-main.css.bak
sudo gedit gtk-main.css
将bg_color和base_color,改为豆沙绿的代码#C7EDCC

  • ubuntu Eclipse 代码区设置豆沙绿
    将ubuntu 主题设置为豆沙绿 发现Eclipse 颜色还是没变 心好累 只能先这样了。


    image.png
  • ubuntu 14.04 源码编译环境配置

    sudo apt-get install -y git-core gnupg flex bison gperf build-essential zip curl libc6-dev libncurses5-dev x11proto-core-dev libc6-i386 lib32stdc++6 lib32gcc1 lib32ncurses5 lib32z1 libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc zlib1g-dev gawk qt4-dev-tools libasound2-dev libavahi-client-dev libavahi-common-dev libcaca-dev libdbus-1-dev libglib2.0-dev libpcre3-dev libpcrecpp0 libpng12-dev libpulse-dev libsdl1.2-dev libslang2-dev lzma texinfo libx11-dev:i386 p7zip-rar gcc-4.4 g++-4.4 g++-4.4-multilib lib32ncurses5-dev
    或者试下
    sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev ccache libgl1-mesa-dev libxml2-utils xsltproc unzip

    或者
    sudo apt-get install libx11-dev libreadline6-dev libgl1-mesa-glx # 此条命令在Ubuntu 14.04下可能会因为源的原因报错,若报错可忽略
    sudo apt-get install -y libc6-i386 lib32stdc++6 lib32gcc1 lib32ncurses5 lib32z1
    git-core gnupg flex bison gperf build-essential
    zip curl zlib1g-dev libc6-dev libncurses5-dev x11proto-core-dev
    libx11-dev libreadline6-dev libgl1-mesa-dev tofrodos python-markdown
    libxml2-utils xsltproc pngcrush gcc-multilib lib32z1 schedtool
    uuid uuid-dev zlib1g-dev liblz-dev liblzo2-2 liblzo2-dev
    gawk m4 libasound2-dev libcups2-dev libxrender-dev xorg-dev xutils-dev x11proto-print-dev ant
    mingw-w64 mingw32
    libusb-dev
    git-core curl u-boot-tools cbootimage dfu-util libterm-twiddle-perl
    sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so

    验证14.04 这个ok
    sudo apt-get install nautilus-open-terminal tofrodos flex bison gperf build-essential curl zlib1g-dev g++-multilib g++-4.4-multilib libc6-dev-i386 lib32ncurses5-dev ia32-libs x11proto-core-dev libx11-dev lib32readline-gplv2-dev lib32z1-dev libxml2-utils wine mingw32

    16.04安装
    sudo apt-get install -y git-core gnupg flex bison gperf build-essential zip curl libc6-dev libncurses5-dev x11proto-core-dev libc6-i386 lib32stdc++6 lib32gcc1 lib32ncurses5 lib32z1 libgl1-mesa-dev g++-multilib tofrodos python-markdown libxml2-utils xsltproc zlib1g-dev gawk qt4-dev-tools libasound2-dev libavahi-client-dev libavahi-common-dev libcaca-dev libdbus-1-dev libglib2.0-dev libpcre3-dev libpng12-dev libpulse-dev libsdl1.2-dev libslang2-dev lzma texinfo libx11-dev:i386 p7zip-rar lib32ncurses5-dev

    特别注意
    mingw32 libpcrecpp0 gcc-4.4 g++-4.4 g++-4.4-multilib 的安装会影响编译,遇到lk编译不过试下gcc版本要降到4.4

    其他安装
    sudo apt-get install -y p7zip-rar vim wine
    卸载系统自带openjdk:
    sudo apt-get purge openjdk*
    JDK7的安装:
    sudo apt-get install -y openjdk-7-jdk openjdk-7-jre

JDK8
sudo gedit /etc/profile
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export JRE_HOME={JAVA_HOME}/jre export CLASSPATH=.:{JAVA_HOME}/lib:{JRE_HOME}/lib export PATH={JAVA_HOME}/bin:PATH

sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/java-8-openjdk-amd64/bin/java 1888
sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/java-8-openjdk-amd64/bin/javac 1888
sudo update-alternatives --config java

降gcc、g++版本
sudo apt-get install -y gcc-4.6 g++-4.6 g++-4.6-multilib gcc-4.4 g++-4.4 g++-4.4-multilib
cd /usr/bin
sudo rm cpp g++ gcc gcov
sudo ln -s cpp-4.6 cpp
sudo ln -s g++-4.6 g++
sudo ln -s gcc-4.6 gcc
sudo ln -s gcov-4.6 gcov
sudo rm cpp g++ gcc gcov
sudo ln -s cpp-4.4 cpp
sudo ln -s g++-4.4 g++
sudo ln -s gcc-4.4 gcc
sudo ln -s gcov-4.4 gcov

 
环境安装好之后理论上可以编译kk/L/M 安装open-jdk8后不用专门去配置java环境变量即可编译android N.
在launch的时候会执行build/envsetup.sh  配置Java环境变量 


![Paste_Image.png](http://upload-images.jianshu.io/upload_images/1307663-2962761e3af36884.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)


- 选择安装Cutecom串口调试软件
sudo apt-get install -y cutecom
sudo gedit /etc/udev/rules.d/70-ttyusb.rules
输入
KERNEL=="ttyUSB[0-9]*", MODE="0666"
后保存。
sudo /etc/init.d/udev restart
以后系统会自动赋予赋予USB转串口设备读写权限。
- [Ubuntu 下最好用的pdf阅读器okular](http://blog.csdn.net/whuslei/article/details/7196218)
直接在Ubuntu软件中心可以安装 直接搜okular
- chromium和chr./arch/arm64/configs/aeon6755_66_m_defconfigome 我还是推荐你使用chrome 兼容性更好点(比如Vysor这个插件在chromium就不支持了),毕竟比较亲。
- Ubuntu 下串口调试工具 有几个 ubuntu 版本的putty 字体不是很喜欢,很简单的界面,minicom 没有GUI . 推荐cutecom  使用时候记得 sudo chmod 666 /dev/ttyUSB0 才有权限读写 出现乱码情况 试下修改下波特率

![image.png](http://upload-images.jianshu.io/upload_images/1307663-e0235a6931dfad7e.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

- 今天装VMware 发现给配置好的win7上电时候could not open /dev/vmmon 
解决Ubuntu下安装VMware错误could not open /dev/vmmon
方法:
cd /usr/bin
sudo rm gcc
sudo ln -s gcc-4.6 gcc(确保你的机器上安装了gcc-4.6)
然后卸载VM
sudo vmware-installer -u vmware-workstation
重装即可
- sublime ubuntu 下配置 白色加黑色底太刺眼了
      "color_scheme": "Packages/Color Scheme - Default/Solarized (Dark).tmTheme",
  "font_face": "DejaVu Sans Mono",
  "font_size": 12,
  "highlight_line": true

      默认的是颜色是这个
  "font_face": "Ubuntu Mono",
  "font_size": 15.0,
  "highlight_line": true,
  "highlight_modified_tabs": true
  个人配置
{
  "color_scheme": "Packages/Color Scheme - Default/Solarized (Dark).tmTheme",
  "font_face": "Ubuntu Mono",
  "font_size": 14.0,
  "highlight_line": true,
  "highlight_modified_tabs": true
}
{
  "auto_complete": true,
  "auto_find_in_selection": true,
  "auto_match_enabled": true,
  "color_scheme": "Packages/Color Scheme - Default/Solarized (Dark).tmTheme",
  "draw_minimap_border": true,
  "fade_fold_buttons": false,
  "font_face": "Ubuntu Mono",
  "font_size": 13,
  "highlight_line": true,
  "highlight_modified_tabs": true,
  "save_on_focus_lost": true,
  "tab_size": 4,
  "translate_tabs_to_spaces": true,
  "trim_trailing_white_space_on_save": true,
  "update_check": false,
  "word_wrap": "true"
}

{
  "auto_complete": true,
  "auto_find_in_selection": true,
  "auto_match_enabled": true,
  "bold_folder_labels": true,
  "color_scheme": "Packages/Color Scheme - Default/Solarized (Dark).tmTheme",
  "draw_minimap_border": true,
  "fade_fold_buttons": false,
  "font_size": 12,
  "highlight_line": true,
  "highlight_modified_tabs": true,
  "save_on_focus_lost": true,
  "tab_size": 4,
  "translate_tabs_to_spaces": true,
  "trim_trailing_white_space_on_save": true,
  "update_check": false,
  "word_wrap": "true"
}


-
- 如何快速的导入github上的as项目
删除下载下来的build gradle 文件夹, 将根目录下的
build.gradle 文件里
com.android.tools.build:gradle:
改为你常用的。  因为很多时候,因为版本不一样,导致gradle下载很慢,
这样操作,可以快速导入!
- ubuntu 下抓了个KE 的log ,网上下了个GAT gat-win32-3.1420.1.c  在虚拟机win7下打开
发现根本解压不了,后来在百度了个,有个release note 才知道 3.155之后才支持android M
16rd 下载了个GAT_exe_v3.1716.3.rar 包含了linux 版本  。
sh gat 时候发现
gat.sh: Syntax error: "(" unexpected  。
sudo dpkg-reconfigure dash 选择no 就行了
gat-linux-x86_64-3/modules/MediatekLogView/MediatekLogView 打开这个
即可选择mtklog文件夹或者解压aee文件

![image.png](http://upload-images.jianshu.io/upload_images/1307663-e9ef50265362f0f5.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

- 如果想在脚本里只获取PID,那么可以用如下脚本。目前收集两种方法:

方法一
$ps x|grep xxx  |awk '{print $1}'

e.g.
    ps x|grep java |awk '{print $1}'
注释:
    1、xxx为执行的命令名称
    2、举个例子,获取当前用户下的java进程 【pid】
         [admin@vm168a ~]$ ps x|grep java |awk '{print $1}'
         16920
    3、用到三个命令,ps、grep、awk。

方法二(推荐)

$pgrep xxx 

e.g.
   pgrep java
- ubuntu 下使用apktool 
下载apk 里边有教程
https://ibotpeaches.github.io/Apktool/install/

Linux:Download Linux wrapper script (Right click, Save Link As apktool
)
Download apktool-2 (find newest here)
Rename downloaded jar to apktool.jar

Move both files (apktool.jar
& apktool
) to /usr/local/bin
(root needed)
Make sure both files are executable (chmod +x
)
Try running apktool
via cli

http://blog.csdn.net/kong92917/article/details/53468913
- 
- ubuntu 下qq 亲测可用
http://blog.csdn.net/ysy950803/article/details/52958538
- 
-
- 
- 
- 
- 
- 
- 
- 
-
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,029评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,395评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,570评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,535评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,650评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,850评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,006评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,747评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,207评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,536评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,683评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,342评论 4 330
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,964评论 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,772评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,004评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,401评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,566评论 2 349

推荐阅读更多精彩内容