ubuntu桌面无限循环登陆

前两天windows系统坏掉了本来打算彻底移居ubuntu。装N卡官方驱动把ubuntu桌面玩坏就不说了了,在安装了某个天杀的的虚拟机之后ubuntu喜闻乐见的循环登陆了……WTF,默默还是滚回windows了

先说一下症状:进入ubuntu的图形登陆界面输入正确的密码,屏幕闪一下,然后重新回到登陆界面。按下ctrl+alt+f1后可以在控制台登陆ubuntu

查看了.xsession-error文件,一大片的错误……总之胡乱的Google一通,发现基本有一下的几种原因:

* 权限不足(我就是这种情况,把把x服务需要的那些都允许root用户能直接访问)
* x服务配置错误
* 服务启动错误

嘛。用N卡的默默滚回windows了

ubuntu下android开发环境搭建

前一段时间系统出了一些问题,于是现在在折腾系统。这里我就介绍一下如何在ubuntu中搭建Android开发以及真机调试环境。

我这里的操作系统是ubuntu 14.10 64位中文桌面版。如果你的操作系统是其他的linux发行版,环境配置的操作可能差不多。如果你在中国大陆,请保证自己有能力访问完整的google网络。

第一步:你应该去android官网下载最新的android studio。Google已经为你做了很多的准备。这里主要需要的是Android SDK。我推荐你使用Idea。不过我这里准备了Idea以及Eclipse。

第二步:准备你的Java环境。由于我比较懒,所以我就直接sudo apt-get install eclipse。所有(应该是绝大多数)的必要的包已经都被获取回来了。eclipse里面安装ADB插件也是必须的、

第三步:配置你的Android SDK。通过你的IDE直接启动Android SDK Manager。下载你需要的版本的Android的Build-tools、Document、SDK Platform、Samples、Google API、Source(为了精简,我是没有下载image。反正我是真机调试)。当然了,公共的SDK Tools以及Platform-tools也是必要的。

在这一步完成的时候理论上你已经可以开发Android应用了。但是由于这里的是Ubuntu 14.10,一个依赖项已经在被移除了,所以还必须手动获得这个依赖项。否则你会无法编译R.java。下面是获取方法:

sudo apt-get install libc6:i386
sudo -i
cd /etc/apt/sources.list.d
echo "deb http://old-releases.ubuntu.com/ubuntu/ raring main restricted universe multiverse" >ia32-libs-raring.list
apt-get update
apt-get install ia32-libs
rm /etc/apt/sources.list.d/ia32-libs-raring.list
apt-get update
exit
sudo apt-get install gcc-multilib

以上方法来自http://stackoverflow.com/questions/8008169/how-to-resolve-error-executing-aapt-in-android-eclipse 。


现在你应该完成了Android开发环境的搭建了。你需要的是搭建调试环境。

如果你要通过USB调试连接你的Android设备,请看这里:

对于Linux操作系统你没必要安装驱动就能够通过USB连接你的Android设备。但是很不辛的是你需要自己配置你的设备。

第一步:通过lsusb命令找到你的Android设备的id

第二步:编辑你的udev规则。

首先你应该在root权限下在/etc/udev/rules.d/创建你的规则。为了简单这里使用gedit了。当然如果你使用vi编辑器也是可以的。

sudo gedit /etc/udev/rules.d/51-android.rules

在gedit里面输入

SUBSYSTEM==”usb”, ATTR{idVendor}==”0bb4″, MODE=”0666″

注意,这里0bb4就是你的lsusb获得的设备id。我这里0bb4代表了HTC设备(实际上我是台电的平板……)

然后给你创建的文件设置权限:

sudo chmod a+rx /etc/udev/rules.d/51-android.rules

权限设置完事重新引导你的系统就好。当然了,还是有不重新引导的方式,但是我这里还是一个懒字。

重新启动系统之后直接进入终端,sudo adb devices 命令应该可以看到你的设备了。

进入你的IDE你就可以开始你的开发了。但是如果你很不幸的发现你的设备无法在IDE里面被识别(就像我)你就应该考虑通过网络调试你的程序。


这里介绍一下如何通过网络调试你的Android设备。请注意这样是有风险的。因为包括GSM网络都能进行调试。黑客可能会轻易的攻击进入你的设备。(这只是Google给的警告啦,哪来的那么多黑客,尤其是在中国……)

第一步:在你的Android设备上开启网络调试。如果你的设备并没有直接提供这个选项请执行下面的命令:

setprop service.adb.tcp.port 5555
stop adbd
start adbd

请注意这里的端口号最好换成其他自定义的端口号。否则还是有比较高的风险的。

第二步:设置你的ubuntu上的adb。你需要执行类似下面的命令来连接你的设备:

sudo adb connect 192.168.0.107:5555

执行完事之后你应该就可以成功连接你的Android设备进行调试了。至此你的Android开发环境已经完全在Ubuntu上面搭建完成。