Ubuntu 64位下搭建ADT的种种问题
我使用的adt版本为 adt-bundle-linux-x86_64-20140702.zip
1. Eclipse启动时提示 adb 无法加载动态链接库 libstdc++.so.6 以及 libz.so.1
安装以下两个32位软件包即可: lib32stdc++6 lib32z1
2. Eclipse频繁崩溃
修改eclipse所在目录下的eclipse.ini, 加入一行:
-Dorg.eclipse.swt.browser.DefaultType=mozilla
3. adb无法找到接入的手机
=====================以下引用自 http://www.cnblogs.com/sink_cup/archive/2011/10/31/ubuntu_x64_android_sdk_java.html
lsusb
拔下手机再运行lsusb,少了一行,那个就是设备。
比如Bus 002 Device 003: ID 0bb4:0ccf High Tech Computer Corp. 表示HTC的厂商ID为0bb4
小米1S的 Bus 002 Device 007: ID 18d1:9025 Google Inc.,表示小米的厂商ID为18d1
锤子手机Smartisan T1是Bus 003 Device 019: ID 29a9:7019,表示锤子的厂商ID为29a9
按照厂商ID填写,比如锤子T1就写:
echo '0x29a9' | tee -a ~/.android/adb_usb.ini
echo 'SUBSYSTEM=="usb", ATTR{idVendor}=="29a9", MODE="0666", GROUP="plugdev"' | sudo tee -a /etc/udev/rules.d/51-android.rules
sudo chmod a+r /etc/udev/rules.d/51-android.rules
sudo service udev restart
adb kill-server
adb start-server
把设备的“USB调试”关掉,拔下来,重新连上电脑,再打开“USB调试”。
adb devices
如果显示正常,即可。
========================引用结束
为了方便找出 vendorId/productId,我写了一段perl脚本来做这件事。 提示输入用户名之后,它会等待10秒钟时间,在此期间,如果你的手机原来是插入状态,那就拔出,如果没插入,那就插入。10秒钟过后,它就会帮你找出两个id,并告诉你应该如何修改文件
#!/usr/bin/perl # This script is to enable adb debug on android devices $hint = <<END;
This script will help you find our the vendor id / product id
END print "Enter your user name:";
$username = <STDIN>; # Find out product id/vendor id
@aA = &getCmdOutput("lsusb");
print "\nIf your android was plugged in, unplug it now. If it's not, plug in it now. I'll wait for 10 seconds ...\n";
sleep 10;
@aB = &getCmdOutput("lsusb"); if( $#aA == $#aB || abs( $#aA- $#aB ) != 1 )
{
die "You didn't make the plug/unplug work as I said. quit\n";
} @smaller = ( $#aA> $#aB )? @aB: @aA;
@bigger = ( $#aA> $#aB )? @aA: @aB; %map;
foreach $item( @smaller )
{
$map{ $item } = 1;
} $deviceInfo = "";
foreach $item( @bigger )
{
if( not exists $map{ $item } )
{
$deviceInfo = $item;
last;
}
} die "Failed to resolve device info\n" unless $deviceInfo ne ""; $deviceInfo =~ /(.*):(.*)/;
$vendorId = $1;
$productId = $2; $ruleFile = '/etc/udev/rules.d/51-android.rules';
$adbFile = '/home/'.$username.'/.android/adb_usb.ini'; $content = <<END;
SUBSYSTEM=="usb", ATTR{idVendor}=="$vendorId",ATTR{idProduct}=="$productId",OWNER="$username", MODE="0666",GROUP="plugdev"
END print "What you should add to $ruleFile :\n $content"; print "Please add this line to your /home/".$username.'/android/adb_usb.ini'." :\n";
print "$vendorId\n";
exit 0; sub getCmdOutput
{
my $command = $_[0]; my @output;
unless ( open CMD_PIPE, "-|" )
{
exec "$command";
exit;
} while ( <CMD_PIPE> )
{
chomp;
if( /ID\s([a-f0-9]+):([a-f0-9]+)\s/ )
{
push @output, "$1:$2";
}
}
@output;
}
Ubuntu 64位下搭建ADT的种种问题的更多相关文章
- CentOS7系统64位下搭建Python3.6环境及相关细节工具部署文章收集
(1)http://blog.csdn.net/chen798213337/article/details/70767902 问题描述: 安装Navicat管理数据库时,启动界面出现乱码情况. 解决办 ...
- ubuntu 64位下安装wps
首先,去官网下载wps.地址:http://community.wps.cn/download/ 然后切换到下载文件夹.运行例如以下命令: $ sudo apt-get install ia32-li ...
- 在Centos7.2(64位)下搭建Web服务器
一:通过Yum安装mysql 1 # wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm 2 # rpm -i ...
- Ubuntu 14.04 AMD 64位 下 Android Studio 的安装
Ubuntu 14.04 AMD 64位 下 Android Studio 的安装 作者:yoyoyosiyu 邮箱:yoyoyosiyu@163.com 时间:2015年8月25日 Android ...
- 求助下 Ubuntu 15.10(64 位)下安装 pyspider 下的问题 - V2EX
https://www.v2ex.com/t/279405 求助下 Ubuntu 15.10(64 位)下安装 pyspider 下的问题 - V2EX pip 更新到最新 sudo apt inst ...
- Windows7 64位系统搭建Cocos2d-x-2.2.1最新版以及Android交叉编译环境(详细教程)
Windows7 64位系统搭建Cocos2d-x-2.2.1最新版以及Android交叉编译环境(详细教程) 声明:本教程在参考了以下博文,并经过自己的摸索后实际操作得出,本教程系本人原创,由于升级 ...
- 在Ubuntu 64位OS上运行hadoop2.2.0[重新编译hadoop]
最近在学习搭建Hadoop, 我们从Apache官方网站直接下载最新版本Hadoop2.2.官方目前是提供了linux32位系统可执行文件,结果运行时发现提示 “libhadoop.so.1.0.0 ...
- ubuntu 64位android项目报错的解决方案,打开64位 Ubuntu 的32位支持功能
ubuntu的64位下的android环境,说实话,还真得费点精力了,解决一个问题,又出来一个新问题. 小编昨天刚好不容易将android的环境搭建好了,这不,刚建了个项目,直接就报错,下面是罗列出的 ...
- WIN7 64位系统搭建WINCE6.0系统遇到的问题
WIN7 64位系统搭建WINCE6.0系统遇到的问题 安装顺序如下: .先装Visual Studio2005: .安装Visual Studio2005 Service Pack 1: .安装Vi ...
随机推荐
- [sqoop1.99.6] 基于1.99.6版本的一个小例子
1.创建mysql数据库.表.以及测试数据mysql> desc test;+-------+-------------+------+-----+---------+------------- ...
- sprint one
产品backlog Id Name Imp Est How to demo 1 各个角色账号登录功能 30 20 建立数据库,数据库中存储一些角色的初始账号以便测试,输入账号密码,系统在数据库中查找账 ...
- HTML 或 CSS 文件中引用的图片文件移动到任意位置
对于一个套接字的输入操作,第一步通常涉及等待数据从网络到达,当所等待分组到达时,被复制到内核的某个缓冲区: 第二步就是把数据从内核缓冲区复制到应用进程缓冲区.通过 Session 的 createQu ...
- postgresql Delete+ join
using tablename as alias DELETE FROM tv_episodes USING tv_episodes AS ed LEFT OUTER JOIN data AS nd ...
- SQL中的OpenXML使用
DECLARE @idoc int ) SET @doc =' <ROOT> <Customer CustomerID="VINET" ContactName=& ...
- vue-新建项目出错情况分析
1.状况一: 按照正常流程新建项目,最终运行npm run dev 的时候,就频频出错,最终找出问题原来在于部分依赖包丢失了,于是重新安装所需要的依赖包再运行项目便好了!
- Android App的签名打包三步骤
1.签名的意义 为了保证每个应用程序开发商合法ID,防止部分开放商可能通过使用相同的Package Name来混淆替换已经安装的程序,我们需要对我们发布的APK文件进行唯一签名,保证我们每次发布的版本 ...
- jquery中链式调用原理
(1).链式调用 $("#mybtn").css("width","100px") .css("height",&quo ...
- .htaccess下Flags速查表
Flags是可选参数,当有多个标志同时出现时,彼此间以逗号分隔. 速查表: RewirteRule 标记 含义 描述 R Redirect 发出一个HTTP重定向 F Forbidden 禁止对URL ...
- 算法练习之leetcode系列1-3
1.Reverse Words in a String public class Solution { public String reverseWords(String s) { String re ...