Ⅰ 如何在Ubuntu下配置android开发环境
配置开发环境具体步骤如下:
一、设置root密码。
因为ubuntu下为了安全,一般都是以普通用户进入系统。运行一些命令都需要root权限,如果之前没有设置root密码,只需要在终端运行:sudopasswdroot命令即可,要输入两次密码,密码不会回显出来。
二、安装JDK
1)首先下载JDK,下载页面:http://www.oracle.com/technetwork/java/javase/downloads/index.html(JDK6:http://www.oracle.com/technetwork/java/javase/downloads/jdk-6u32-downloads-1594644.html),下载下来的是bin文件(系统是64位的话,下载linux64位的安装包)。将在/usr/lib目录下新建一个java目录,然后将文件拷贝到该java目录,给予可执行权限,然后再安装。以下是命令:
cd/usr/lib
sudomkdirjava
cdjava
cp~/jdkxxx.bin/usr/lib/java/
sudochmoda+xjdkxxx.bin
sudo./jdkxxx.bin
jdkxxx.bin是下载的文件名,~/jdkxxx.bin是下载文件的保存路径。第一次执行sudo的时候需要输入root密码,输入就是了。
到最后会看到一个Done.表示安装完成了。
2)配置环境变量:打开/etc/profile文件,在文件的最下面加上下面一段内容:
exportJAVA_HOME=/usr/lib/java/jdk1.6.0_29
exportPATH=$JAVA_HOME/bin:$PATH
exportCLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$CLASSPATH
其中/usr/lib/java/jdk1.6.0_29是JDK的安装根目录。命令:
sudogedit/etc/profile
ctrl+s保存关闭,接着:
sudosource/etc/profile
使环境变量配置生效,这样就不用重启。但只在当前终端有效,如果再打开一个终端,则需要再执行一次。
最后输入命令检查一下是否配置成功:
java-version
如果配置成功,会出现JDK的版本号,如下图所示:
Ⅱ Ubuntu编译Android错误,compilation terminated
没找到srtp.h这个头文件,倒数第6行那个路径肯定不对。
你要在Android.mk文件中指定正确的头文件所在目录的路径。
Ⅲ 用GSConnect玩ubuntu跟android手机文件、短信、联系人、通话等共享互传
在使用Ubuntu Linux作为工作主机的过程中,常遇到的两个主要不便之处在于:一是微信、企业微信、QQ等即时通信软件与Linux操作系统的集成难以实现;二是Ubuntu连接Android手机实现便捷的文件传输、信息共享。
过去,人们通常通过USB接口线连接电脑,使用虚拟MTP方式传输文件,但时常会遇到无法识别USB或USB线松动导致文件传输中断的问题。
然而,今天,我们可以通过无线(wireless)的方式,使用Linux上的GSConnect与Android上的KDE Connect软件进行配对,来解决第二个问题,并且GSConnect能够实现更多功能!
首先,在Android设备上安装KDE Connect的apk。用户可以从Play Store直接安装,如果无法连接Play Store,则可以尝试使用Fdroid(下载链接:KDE Connect | F-Droid - Free and Open Source Android App Repository 或者访问:https://f-droid.org/zh_Hans/packages/org.kde.kdeconnect_tp/)。如果仍然无法打开此下载地址,需要自行寻找解决方案。
将下载的apk安装到Android手机。启动手机上的KDE Connect后,界面应如图所示。
接着,在Ubuntu系统上安装GSConnect。在Ubuntu 20系统中,kde connect已预装,但要使用GSConnect,必须先卸载默认的kde connect。在终端执行如下命令:
完成此步骤后,您在安装GSConnect后不会遇到端口占用问题,也不会优先连接到kde connect,而是直接连接GSConnect。
现在,我们来安装GSConnect。
在没有使用gnome桌面的用户中,需要先安装gnome桌面(概率极低)。如果您不知道gnome shell版本,可以通过以下方式查询:
若发现没有gnome shell,可以安装它:
现在,可以开始安装GSConnect。
如果您使用Firefox或Google Chrome等浏览器,可以从GNOME Extensions网站安装GSConnect,假设您已经按照相关说明操作。GSConnect的安装页面如下所示:
在浏览器中打开此页面,调至“on”状态,然后开始安装。
安装完成后,浏览器会添加一个名为GSConnect的插件。
顺便一提,可以使用terminal命令查询Ubuntu系统的IP地址。
为了连接手机和电脑到同一局域网,并在手机上配置KDE Connect,需要按照以下步骤操作:
在KDE Connect程序右上角点击三个点的按钮,选择“通过IP添加设备”菜单。
点击此菜单,输入Ubuntu电脑的IP地址,然后点击确定。
接下来,进行手机和Ubuntu电脑的配对过程。
可以从任何一方发起配对。从Ubuntu发起配对的操作如下:
打开Ubuntu系统右上角的状态栏下的“mobile devices”窗口,确保手机和电脑在同一个局域网内。如果没有看到设备,请检查网络连接,并点击窗口左上角的刷新按钮刷新设备列表。
当看到“unpaired”字样时,点击进入,查看“device is unpaired”。在右侧有一个“pair”按钮。
点击“pair”按钮进行配对。
手机上会收到连接请求,不要拒绝。这样,手机与电脑便永久连接。
开始使用GSConnect的各种设置和功能。
在连接期间,如果您接听电话,可以在电脑上直接接收到电话。短信也可以在电脑上查看,更多功能不再一一展示。
额外提示:KDE Connect同样适用于mac和Windows系统,使用GSConnect后,或许可以摆脱微信等第三方文件传输工具。
Ⅳ ubuntu下怎样才算是成功搭建android调试过程
在ubuntu下搭建android开发环境,准备学习一下android开发。经过2个多小时,终于搭建成功。
1、安装JDK
首先到oracle的官网上下载linux版本的JDK ,这里选择 Linux x86 - Self Extracting Installer。直接运行安装,先把这个文件cp到你的安装目录下,然后在你的安装目录直接执行:
./jdk-6u26-linux-i586.bin
如果执行失败是因为没有执行权限,那么还需要加上执行权限:
chmod +x ./jdk-6u26-linux-i586.bin
安装程序会自动给你安装到当前目录的jdk1.6.0_26目录下。程序安装好了,接着需要设置环境变量。执行:
sudo gedit /etc/profile
执行中提示:(gedit:4849): Gtk-WARNING **: Attempting to store changes into `/root/.local这个错误,从网上搜索了一下,sudo mkdir -p /root/.local/share/ 也就是表示以超级用户(sudo命令)身份创建目录,这样解决了这个问题。
在配置文件最后加入如下部分:
export JAVA_HOME=/home/jackwong/jdk1.6.0_26
export JRE_HOME=/home/jackwong/jdk1.6.0_26/jre
export PATH=/home/jackwong/jdk1.6.0_26/bin:$PATH
export CLASSPATH=.:/home/jackwong/jdk1.6.0_26/lib:/home/jackwong/jdk1.6.0_26/jre/lib
保存,然后注销当前用户,重新登录,环境变量就生效了。
验证是否安装成功:
执行:
java -version
如果出现:
java version "1.6.0_26"
Java(TM) SE Runtime Environment (build 1.6.0_26-b06)
Java HotSpot(TM) Server VM (build 20.0-b11, mixed mode)
这样的信息,就说明OK了。
注意,ubuntu默认已经安装了openjdk,所以你就算不安装jdk,执行java -version也不会报错,但是报告的信息和安装了jdk是不一样的,请注意区分。
2.安装eclipse
目前官方推荐开发环境是eclipse+ADT。当然你完全可以采用其他任何一种开发环境,但是我还是选择了官方的推荐,因为一切都是免费的。下载eclipse的地址是:http://www.eclipse.org/downloads/ 我下载的是32bit linux :
Eclipse IDE for Java Developers。
我下载下来的文件是eclipse-java-juno-SR1-linux-gtk.tar.gz
当然首先是解压,执行命令:
tar zvxf eclipse-java-juno-SR1-linux-gtk.tar.gz
解压成功之后,就出现了一个eclipse目录。这个目录就是安装好的eclipse了,进入这个目录,执行eclipse文件,即可启动eclipse。
自己建立桌面启动快捷方式,即桌面右键创建启动器。
3.下载安装Android SDK Starter Package
Android SDK Starter Package这个只是SDK的核心基本工具,有了它,再利用它的管理工具下载其他你需要到部分。看到这个目录中有个android脚本文件了吗?执行它,就会启动Android SDK and AVD Manager,这个工具可以帮你下载其他你需要的部分,还可以创建模拟机。
下载地址是:http://developer.android.com/sdk/index.html
一般是下载最新版,我下载的:android-sdk_r21.1-linux.tgz。
接下来当然是解包了:tar zvxf android-sdk_r21.1-linux.tgz
解包完毕,就会在当前目录下出现android-sdk-linux_x86目录了。这个目录下就是sdk的基本工具了。记住这个目录,因为以后你运行工具或者设置ADT的时候,会需要这个目录的!
4.安装ADT(Android Development Tools)插件
ADT插件是google官方开发的Eclipse的一个插件,专门为Android应用开发而准备的。 启动 Eclipse, 然后选择 Help > Install New Software....。单击右上角的Add按钮,在弹出的 Add Repository 对话框中,Name一栏目填写 "ADT Plugin",在Location一栏就有两个选择,一个是填入下载网址:https://dl-ssl.google.com/android/eclipse/,这样就可以网上下载安装。第二个选择是如果我已经下载了ADT Plugin,那么就单击旁边的Archive按钮,直接找到插件所在到包即可。这里我用的是第一种方法。比如我用的就是第二种,把Developer SDK Tools前面的checkbox选上,然后单击下面的next按钮,然后就等着安装进度条完成吧,其中会出现安装软件的列表,你单击Next即可,然后会出现license,你必须选择agree才行,然后单击finish就完成了。安装完成之后,重启eclipse即可。
5.配置ADT 插件
配置的内容就是要修改在eclipse中到ADT插件的引用指向,需要指向前面安装好的Android SDK目录,还记得这个目录吗?
启动eclipse,选择Window > Preferences..
在弹出的Preferences对话框中左边选择Android标签,右边SDK location选择你当初Android SDK的目录即可。比如我到目录是:/home/AAA/android-sdk-linux_x86(AAA这里是我的用户名),然后单击apply,再单击ok即可。
在这个过程中会弹出一个对话框问你是否要参加google的满意度调查报告。你可以选择参加还是不参加。单击process按钮即可。
安装好之后,你可以常用Help > Check for Updates选项来保持ADT保持最新。
6.添加Android操作系统和部件
到目前为止,基本配置都差不多了,但是为了开发android应用,还必须添加一个android操作系统,用于模拟器模拟你的应用程序。当然还有一些其他部件需要安装。其实就是通过SDK 工具包中的Android SDK Manager来完成。当然在eclipse中可以直接启动这个程序:Window > Android SDK Manager.
当然也可以直接运行sdk目录下的tools目录下的android脚本来启动。
推荐的部件一般是:
SDK Tools,这个你安装了sdk starter package实际上已经装好了。
SDK Platform-tools,这个要装。
SDK platform,这个至少需要一个。也就是操作系统,你可以下载多个,比如2.2,3.1你可以都下载,但是至少必须一个,因为模拟器运行的时候是必须要的。所以,如果你想各种平台都模拟测试一下,那么你就需要各种版本的android都下载一个。
我下载了SDK Platform-tools和Android 2.3.3,Android 4.1,Extras几个包。
下载完成之后,Android的开发环境就搭建好了。
7.对模拟器进行设置
选择windows->Android Virtual Device Manager 点击new,具体配置如图.
完成后点击start,虚拟机运行后,可将语言调整为中文简体。
8.hello,android测试程序
启动eclipse,选择File->New->Project...,选择android下Android Application Project.
Application name:Hello,Android 这是应用程序名字,也是程序运行的时候显示在屏幕上方的文字,注意第一个字母要大写。
project name:HelloAndroid 这是项目名称,也就是包含文件的目录名称
Package Name:my.android 这个不用解释,学过java的都应该知道,这是类的包名。
其它地方默认就可以了。
然后一路next,在Activity name处设置为:Helloandroidactivity(注意要求第一个字母大写)就可以了。
完成后,在my.android下找到Helloandroidactivity.java,打开后,把里面的onCreate方法的代码更新如下:
import android.widget.TextView;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
TextView tv = new TextView(this);
tv.setText("Hello, Android!=你好,安卓!");
setContentView(tv);
}
然后运行,等一段时间,会出现android虚拟机,并运行该程序。
Ⅳ Android应用程序获取system权限
支持原作者 : http://www.xugaoxiang.com/blog/index.php/archives/53/
软硬件环境
ubuntu 14.04
Android studio2.1.2
Android 5.1.1
前言
一般的Android应用程序,在安装后,程序只能访问/data/data/${程序包名}下的数据,如常见的SharedPreferences、database等。
而如果想让app访问其它地方的资源时,就必须要获取更高的权限丛团,像system或者root。本文完成system权限的获取,实际上一般的应用有system的权限基本上也够了。
修改apk内的AndroidManifest.xml
在app中的AndroidManifest.xml文件中的manifest标签中加入
android:sharedUserId="android.uid.system"
APP工程生成apk文件
android studio或者eclipse自动就帮你生成好了
给apk文件进行签名
这里分两种情况,一种是厂商,有android系统源码,既可以把app源码导入到android源码中,也可以单独完成签名。第二种磨历是你仅仅是做应用的,拿不到厂商的source code,而且
这种情况也相当普遍,怎么办?别着急,我们今天就来解决这个问题。
签名需要的几个文件
这个你必须找厂商要,signapk.jar、platform.x509.pem、platform.pk8,如果你有source code,signapk.jar存瞎郑搜放在prebuilts/sdk/tools/,platform.* 两个key文件存放在build/target/proct/security/下
签名具体命令
java -jar signapk.jar platform.x509.pem platform.pk8 unsigned.apk signed.apk
制作新的image文件
如果你的应用需要预置到android系统中,将signed.apk导入到android源码目录中(一般是out/target/proct/${hardware}/system/app/下),编译生成新的
system.img,再烧录到目标板中。如果不需要预置,那就直接adb install好了。
测试
待系统启动后adb shell到板子上,ls -l查看app安装目录(/data/data/${程序包名})的权限,看看是不是变成system:system了。