linux开发android
① 安卓系统是基于linux内核开发的,两者的具体区别是什么为什么安卓多用于移动设备而linux不是
安卓基于linux内核,但是针对移动设备做了更多的优化,所以安卓多用于移动设备。两者区别如下:
一、主体不同
1、安卓系统:是一种基于Linux的自由及开放源代码的操作系统。
2、linux内核:是一套免费使用和自由传播的类UNIX操作系统。
二、应用不同
1、安卓系统:主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发。
2、linux内核:是一个基于POSIX和Unix的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议。
三、特点不同
1、安卓系统:会同一系列核心应用程序包一起发布,该应用程序包包括客户端,SMS短消息程序,日历,地图,浏览器,联系人管理程序等。所有的应用程序都是使用java语言编写的。
2、linux内核:继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。
② linux环境下开发android跟windows下开发有什么区别
1,很多代码用到了 NDK,NDK 需要用 Linux 编译更方便,比方说绝大多数游戏都要用 NDK。
2,很多开发者需要涉及 android 源代码,必须在 Linux 下编译。
3,CPU 产商提供的工具链是 Linux 版本,围绕该 CPU 进行的相关优化,相关代码必须在 Linux 下进行开发(尤其是硬件解码音视频播放等等功能)。
4,AVD只是界面分辨率兼容性测试的时候临时用一下的,实际调试一定是用真机,所以android开发效率与AVD性能无关。
5,Windows 环境只能做很有限的一小部分与硬件无关的 android 开发工作,作为硬件厂商,随机内置的程序当然都要针对该硬件优化,这些工作必须使用 Linux 来做,因此从硬件产商的角度来看,这与 Windows 环境“烂不烂”无关,而是“能不能”的问题。
③ 鸿蒙是基于安卓开发的吗
鸿蒙系统不是基于安卓开发的,是基于Linux系统系统开发的。
Android系统是基于Linux的操作系统所开发的移动操作系统,众所周知,linux系统一直都是开源的,所以不存在授权问题,而“华为鸿蒙”系统也同样是基于Linux系统开发的自研操作系统。
虽然鸿蒙系统的底层也是基于Linux开发的,但是它采用了微内核架构,而安卓系统则采用了宏内核架构。这意味着鸿蒙系统更加安全,更难被攻击。此外,鸿蒙系统还具有更好的分布式能力和更好的兼容性。
需要注意的是,虽然鸿蒙不是基于安卓系统开发的,但它具有能够运行安卓应用程序的能力,这是通过“虚拟机”技术实现的。这使得一些安卓应用可以在鸿蒙设备上运行,但它们是在虚拟环境中运行的,而不是直接在鸿蒙操作系统上运行。
鸿蒙系统的优点
1、分布式架构:鸿蒙系统采用分布式架构首次用于终端OS,实现跨终端无缝协同体验。
2、高可靠性:微内核的内核非常稳定,具有高可靠性。众多系统服务都运行在用户态模块上,并不影响系统稳定性。
3、高扩展性:由于众多系统服务都转移到了用户态服务模块上,可以方便地根据终端需求进行按需剪裁和添加,实现了高扩展性。
4、高安全性:微内核的代码量大大减少,带来了更高的安全性。微内核只提供最基础的服务,比如多进程调度和多进程通信等。
5、高可维护性:用户态模块可以彼此独立的启停、卸载和升级。
总体来说,鸿蒙系统具有分布式架构、高可靠性、高扩展性、高安全性、高可维护性等优点,是一款优秀的开源操作系统。
以上内容参考网络-鸿蒙系统
④ linux怎么搭建android开发环境
在ubuntu下搭建android开发环境,准备学习一下android开发。经过2个多小时,终于搭建成功。
1、安装JDK
首先到oracle的官网上下载linux版本的JDK(网址为:http://www.oracle.com/technetwork/java/javase/downloads/jdk-6u26-download-400750.html),这里选择 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虚拟机,并运行该程序。