android 开发 与 javaweb开发 区别

android 开发 与 javaweb开发 区别,第1张

  首先这个问题是个范围问题。

  android开发是java开发的一个分支。你说的java类库是指标准类库吧。android种的类库有一部分和java类库基本一致,也就是类名一致。比如String,Integer这些,但是具体的实现都是改过的(还好改过的,不然和甲骨文打官司就惨了)。不过java种的swing这些类库在android种就没有了,也就是说android种只用了java种的常用的类库。你对java开发了解的话那么android很快就可以上手,只是熟悉api的一个过程而已。而且android开发比你用java开发web要简单容易很多,因为你不必了解太多的东西,只需要了解android方面就可以了,而不像做web你除了java还需要html,css,javascript,sql,甚至ssh框架,太繁琐了。说了这么多也就是说明android其实比一般的java开发还容易。区别不大,而且更简单。

  现在分别理解一下什么是安卓开发和Java开发。

  Android 平台是 Open Handset Alliance 的成果,Open Handset Alliance 组织由一群共同致力于构建更好的移动android开发。

  android开发电话的公司组成。这个组织由 Google 领导,包括移动运营商、手持设备制造商、零部件制造商、软件解决方案和平台提供商以及市场营销公司。从软件开发的观点看,Android 正处在开源领域的中心位置。

  市场上第一款支持 Android 的手机是由 HTC 制造并由 T-Mobile 供应的 G1。这款设备从设想到推出花了大约一年的时间,惟一可用的软件开发工具是一些实行增量改进的 SDK 发行版。随着 G1 发行日的临近,Android 团队发布了 SDK V10,用于这个新平台的应用程序也浮出水面。

  为了鼓励创新,Google 举办了两届 “Android Developer Challenges”,为优胜的参赛作品提供数百万美金的奖励。G1 问世几个月之后,随后就发布了 Android Market,它使用户可以浏览应用程序,并且可以将应用程序直接下载到他们的手机上。经过大约 18 个月,一个新的移动平台进入公众领域。

  2003年10月,Andy Rubin等人创建Android公司,并组建Android团队。

  2005年8月17日,Google低调收购了成立仅22个月的高科技企业Android及其团队。安迪鲁宾成为Google公司工程部副总裁,继续负责Android项目。

  2007年11月5日,谷歌公司正式向外界展示了这款名为Android的操作系统,并且在这天谷歌宣布建立一个全球性的联盟组织,该组织由34家手机制造商、软件开发商、电信运营商以及芯片制造商共同组成,并与84家硬件制造商、软件开发商及电信营运商组成开放手持设备联盟(Open Handset Alliance)来共同研发改良Android系统,这一联盟将支持谷歌发布的手机操作系统以及应用软件,Google以Apache免费开源许可证的授权方式,发布了Android的源代码。

  2008年,在GoogleI/O大会上,谷歌提出了Android HAL架构图,在同年8月18号,Android获得了美国联邦通信委员会(FCC)的批准,在2008年9月,谷歌正式发布了Android 10系统,这也是Android系统最早的版本。

  2009年4月,谷歌正式推出了Android 15这款手机,从Android 15版本开始,谷歌开始将Android的版本以甜品的名字命名,Android 15命名为Cupcake(纸杯蛋糕)。该系统与Android 10相比有了很大的改进。

  2009年9月份,谷歌发布了Android 16的正式版,并且推出了搭载Android 16正式版的手机HTC Hero(G3),凭借着出色的外观设计以及全新的Android 16操作系统,HTC Hero(G3)成为当时全球最受欢迎的手机。Android 16也有一个有趣的甜品名称,它被称为Donut(甜甜圈)。

  2010年2月份,Linux内核开发者Greg Kroah-Hartman将Android的驱动程序从Linux内核“状态树”(“staging tree”)上除去,从此,Android与Linux开发主流将分道扬镳。在同年5月份,谷歌正式发布了Android 22操作系统。谷歌将Android 22操作系统命名为Froyo,翻译完名为冻酸奶。

  2010年10月份,谷歌宣布Android系统达到了第一个里程碑,即电子市场上获得官方数字认证的Android应用数量已经达到了10万个,Android系统的应用增长非常迅速。在2010年12月,谷歌正式发布了Android 23操作系统Gingerbread (姜饼)。

  2011年1月,谷歌称每日的Android设备新用户数量达到了30万部,到2011年7月,这个数字增长到55万部,而Android系统设备的用户总数达到了135亿,Android系统已经成为智能手机领域占有量最高的系统。

  2011年8月2日,Android手机已占据全球智能机市场48%的份额,并在亚太地区市场占据统治地位,终结了Symbian(塞班系统)的霸主地位,跃居全球第一。

  2011年9月份,Android系统的应用数目已经达到了48万,而在智能手机市场,Android系统的占有率已经达到了43%。继续在排在移动操作系统首位。在9月19号,谷歌将会发布全新的Android 40操作系统,这款系统被谷歌命名为Ice Cream Sandwich(冰激凌三明治)。

  2012年1月6日,谷歌Android Market已有10万开发者推出超过40万活跃的应用,大多数的应用程序为免费。Android Market应用程序商店目录在新年首周周末突破40万基准,距离突破30万应用仅4个月。在2011年早些时候,Android Market从20万增加到30万应用也花了四个月。

  第二:关于javaweb的开发:

  詹姆斯·戈士林博士以"Java技术之父"闻名于世。

  他是Java技术的创始人, 作为Sun研究院院士,他亲手设计了Java语言,完成了Java技术的原始编译器和虚拟机。在他的带领下,Java现已成为互联网的标准编程模式以及分布式企业级应用的事实标准,其跨平台的技术优势为网络计算带来了划时代的变革。戈士林博士积极致力于软件开发工具的研究,以使软件开发工具的功能更强大,更容易为开发人员所使用,确保应用、服务开发的迅速完成。

  Java技术是Sun公司在1995年5月正式推出的。八年多来,Java已从编程语言发展成为全球第一大通用开发平台。Java技术已为计算机行业主要公司所采纳,同时也被越来越多的国际技术标准化组织所接受。1999年,Sun推出了以Java 2平台为核心的J2EE、J2SE和J2ME三大平台。随着三大平台的迅速推进,在世界上形成了一股巨大的Java应用浪潮。同时,Java技术还引发了一场无法停止的大变革,为整个Java社团带来了巨大的潮水般的商业机会。

  Java技术及其应用将有更大的发展。据IDC预计,自2001年起的其后5年内,采用Java的IT产品的价值将翻番,在2006年将达到453亿美元,年增长率为149%。截止到2003年5月,注册Java Developer Connection (JDC)的Java开发商超过300万人,对JRE(Java运行环境)的下载达7,200万次。Sun在JavaOne 2003大会上确定的目标是,在3~5年内使Java技术开发商从今天的300万发展到1,000万,以支持Java技术这一全球领先技术平台的显赫地位。

要想运行网页上的js脚本,webview必须设置支持Javas cript。

Java代码

1mWebviewgetSettings()setJavas criptEnabled(true);

然后是设置webview要加载的网页:

web的网页:webViewloadUrl("http://wwwgooglecom");

本地的网页:webViewloadUrl("file:///android_asset/XXhtml"); //本地的存放在:assets文件夹中

webview做完基本的初始化后我们还要要给它,加进一个回调的代理类Javas criptInterface,并给它一个调用的名称:ncp

Java代码

1mWebViewaddJavas criptInterface(new Javas criptInterface(),"ncp");

Javas criptInterface可以是一个普通的Java类,类实现的方法,均可被js回调:

Java代码

final class Javas criptInterface {

public int callOnJs() {

return 1000;

}

public void callOnJs2(String mode) {

//TODO

}

}

Java要调用js的方法,只需知道js的方法名称即可:

Java代码

1mWebViewloadUrl("javas cript:onSaveCallback()");

js 这边就更简单:

Js代码

windowonload = function(){

documentgetElementById('btn_1')addEventListener('click', onBtnClick, false);

var _int_value = windowncpcallOnJs();

alert("get int from java:" + _int_value );

}

function onBtnClick() {

windowncpcallOnJs2("click");

}

Java和js交互有以下一些特点:

1Java 调用 js 里面的函数,速度并不令人满意,大概一次一两百毫秒吧,如果要做交互性很强的事情,这种速度会让人疯掉的。而反过来就不一样了, js 去调 java 的方法,速度很快,基本上 40-50 毫秒一次。所以尽量用 js 调用 java 方法,而不是 java 去调用 js 函数。

2Java 调用 js 的函数,没有返回值,而 Js 调用 java 方法,可以有返回值。返回值可以是基本类型、字符串,也可以是对象。如果是字符串,有个很讨厌的问题,第 3 点我会讲的。如果是对象,这个对象会被转换为 js 的对象,直接可以访问里面的方法。但是我不推荐 java 返回给 js 的是对象,除非是必须。因为 js 收到 java 返回的对象,会产生一些交换对象,而如果这些对象的数量增加到了 500 或 600 以上,程序就会出问题。所以尽量返回基本数据类型或者字符串。

3Js 调用 Java 的方法,返回值如果是字符串,你会发现这个字符串是 native 的,不能对它进行一些修改操作,比如想对它 substr ,取不到。怎么解决呢转成 locale 的。使用 toLocaleString() 函数就可以了。不过这个函数的速度并不快,转化的字符串如果很多,将会很耗费时间。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » android 开发 与 javaweb开发 区别

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情