用Eclipse开发和调试Android应用程序(一)

前面介绍了Windows环境下,基于Android SDK(2.3) 和 Eclipse(helios)的Android开发环境的搭建,并创建了第一个应用程序Hello Android World。具体挺参考小生的blog:http://blog.sina.com.cn/deaboway 或者http://blog.youkuaiyun.com/deaboway 。

现在,我们已经可以使用Eclipse来创建和开发Android应用程序,本文将仍以Hello Android World工程来深入解析Eclipse中Android工程的结构以及调试。

写上篇的时候,刚好Android SDK Platform Honeycomb Preview, revision 1(android-3.0_pre_r01-linux.zip)已经加入http://dl-ssl.google.com/android/repository/repository.xml,却无法下载,因此我们的第一个Android应用程序是用的Android SDK Platform 2.3.1,即Android 9 AVD进行演示。现在Android SDK Platform Honeycomb Preview已经放到http://dl-ssl.google.com/android/repository/android-3.0_pre_r01-linux.zip,敢为天下先是我等求知若渴的程序员的优秀品质,因此,本次我们使用最新版本的Android SDK Platform Honeycomb Preview来进行我们本次教程。

先看看最新的Honeycomb Preview的样子吧(由于是Preview版本,启动确实不敢恭维,根据传闻,前几天之所以该版本一度无法下载安装是因为google发现这个Preview版本太烂,面子上挂不住,所以又撤掉了,呵呵):

clip_image002

相比手机上目前使用的最高Android 2.3版本而言,Android 3.0 Honeycomb更适合平板电脑使用,是专门为Android平板电脑进行优化的系统版本。随着SDK的发布,更加有利于开发者和厂商针对 Android 3.0 Honeycomb平板电脑进行开发,包括Android平板电脑应用和匹配。

一、 Android 应用程序概述

1. Android 的嫡系组件

Android有四项一等公民(或称为嫡系组件),包括:Activity(活动)、ContentProvider(内容提供程序)、BroadcastReceiver(广播接收器)与Service(服务)。它们都必须宣告于AndroidManifest.xml档案里。

Activity 活动

活动是最常用的 Android 应用程序形式。活动在一个称为视图(后文将介绍)的类的帮助下,为应用程序提供 UI。视图类实现各种 UI 元素,比如文本框、标签、按钮和计算平台上常见的其他 UI 元素。

一个应用程序可以包含一个或多个活动。这些活动通常与应用程序中的屏幕形成一对一关系。

应用程序通过调用 startActivity() 或 startSubActivity() 方法从一个活动转移到另一个活动。如果应用程序只需“切换”到新的活动,就应该使用前一个方法。如果需要异步的调用/响应模式,就使用后一个方法。在这两种情况下,都需要通过方法的参数传递一个 intent。

由操作系统负责决定哪个活动最适合满足指定的 intent(后文将介绍)。

对于Activity,关键是其生命周期的把握(后文将介绍),其次就是状态的保存和恢复(onSaveInstanceState onRestoreInstanceState),以及Activity之间的跳转和数据传输(intent)。

Activity几乎承接着用户对应用程序(Application)的所有操作,Activity应该有一个窗口(Window),这个窗口是可以通过不用的主题(Theme)改变样子的。Activity应该要注意它的生命周期(Lifecycle)、设备状态(Configuration)改变时的影响以及运行状态和数据的保存,这个在一个应用程序是否可靠和人性化上至关重要。Activity里还应该要申明一些许可(Permissions),以便使用Android的一些软硬件功能,这些申明可以由代码或者Manifest.xml给出。最后,每个Activity(的入口)一定要在Manifest当中申明。

Service 服务

与其他多任务计算环境一样,“在后台”运行着一些应用程序,它们执行各种任务。Android 把这种应用程序称为“Service服务”。

Service是没有界面的程序,它是所谓的服务,也叫后台程序。应该要非常注意Service的启动(startService)和绑定(bindService)这两种开启Service的方法之间的关系以及Service对应的生命周期,两种开户Service的方法对Service 的生命周期效果是不同的。还有就是申明许可以及申明Service,也是在代码内或者Manifest内申明。

BroadcastReceiver 广播接收器

广播接收器是一个应用程序组件,它接收请求并处理 intent。与服务一样,接收器在一般情况下也没有 UI 元素。广播接收器通常在 AndroidManifest.xml 文件中注册。广播接收器的类属性是负责实现这个接收器的 Java 类。

广播接收并不是通常所说的无线电广播,而是指由sendBroadcast()所发送出来的意图(Intent),即广播在这里的意思是意图,BroadcastReceiver在注册(Registe)之后可以自动监听符合预先给定的条件的意图,如果有则会通知此 BroadcastReceiver的持有程序。

ContentProvider 内容提供程序 ——数据管理

内容提供程序是 Android 的数据存储抽象机制。我们以移动设备上常见的一种数据为例:地址簿或联系人数据库。地址簿包含所有联系人及其电话号码,用户在使用手机时可能需要使用这些数据。内容提供程序对数据存储的访问方法进行抽象。内容提供程序在许多方面起到数据库服务器的作用。对数据存储中数据的读写操作应该通过适当的内容提供程序传递,而不是直接访问文件或数据库。可能还有内容提供程序 的 “客户机” 和 “实现”。

ContentProvider是作保存应用程序数据和建立维持数据库之用,以便程序重新启动时回到以前的状态或者保存信息。应该注意应用程序的使用权限以及SQL语言的使用,Android用的是一个轻量级的数据库系统SQLite。

2. Android 生命周期

Android 程序的生命周期是由系统控制而非程序自身直接控制,这与桌面应用程序在程序自身收到关闭请求后执行一个特定的动作(比如从 main 函数中 return)而导致进程结束的思维不同。

在Android系统中,当某个activity调用startActivity(myIntent)时,系统会在所有已经安装的程序中寻找其intentfilter和myIntent最匹配的一个activity,启动这个进程,并把这个intent通知给这个activity。这就是一个程序的“生”。在Android中,所有的应用程序“生来就是平等的”,所以不光Android的核心程序甚至第三方程序也可以发出一个intent来启动另外一个程序中的一个activity。Android的这种设计非常有利于“程序部件”的重用。

Android根据其重要性在内存不足的时候移去重要性最低的进程。重要性由高到低为:

1.前台进程。这样的进程拥有一个在屏幕上显示并和用户交互的activity或者它的一个IntentReciver正在运行。这样的程序重要性最高,只有在系统内存非常低,万不得已时才会被结束。

2.可见进程。在屏幕上显示,但是不在前台的程序。比如一个前台进程以对话框的形式显示在该进程前面。这样的进程也很重要,它们只有在系统没有足够内存运行所有前台进程时,才会被结束。

3.服务进程。这样的进程在后台持续运行,比如后台音乐播放、后台数据上传下载等。这样的进程对用户来说一般很有用,所以只有当系统没有足够内存来维持所有的前台和可见进程时,才会被结束。

4.后台进程。这样的程序拥有一个用户不可见的activity。这样的程序在系统内存不足时,按照LRU的顺序被结束。

5.空进程。这样的进程不包含任何活动的程序部件。系统可能随时关闭这类进程。

从某种意义上讲,垃圾收集机制把程序员从“内存管理噩梦”中解放出来,而Android的进程生命周期管理机制把用户从“任务管理噩梦”中解放出来。Android使用Java作为应用程序API,并且结合其独特的生命周期管理机制同时为开发者和使用者提供最大程度的便利。

Activity 生命周期

Activity中常用的函数有SetContentView() findViewById() finish() startActivity(),其生命周期涉及的函数有:

void onCreate(Bundle savedInstanceState)

void onStart()

void onRestart()

void onResume()

void onPause()

void onStop()

void onDestroy()

clip_image004

注意的是,Activity的使用需要在Manifest文件中添加相应的,并设置其属性和intent-filter。

Service 生命周期

Service可以通过Context.startService()或Context.bindService()创建,通过Context.stopService()、Service.stopSelf()、Service.stopSelfResult()或Context.unbindService()来关闭。其生命周期涉及的函数有:

void onCreate()

void onStart(Intent intent)

void onDestroy()

其中onCreate()和onDestroy()可以被所有服务调用,无论是由Context.startService()还是Context.bindService()发起的Service。但是,onStart()只能被由startService()发起的Service调用。

如果一个Service运行其它对象绑定它,需要扩展如下callback方法:

IBinder onBind(Intent intent)

boolean onUnbind(Intent intent)

void onRebind(Intent intent)

clip_image006

BroadcastReceiver 生命周期

只包含一个方法:void onReceive(Context curContext, Intent broadcastMsg)

包含活动的组件的BroadcastReceiver将不会被系统关闭,但是仅包含不活动的组件的进程将随时会背系统关闭(当其它组建需要内存时)。

3. Intent 简介—— Android 的创新导航与触发机制

前文介绍了Android的四项一等公民:Activity(活动)、ContentProvider(内容提供程序)、BroadcastReceiver(广播接收器)与Service(服务)。这四种组件是独立的,它们之间可以互相调用,协调工作,最终组成一个真正的Android应用。

在这些组件之间的通讯中,主要是由Intent协助完成的。Intent是Android应用开发里很重要的一个元件,通过Intent可以从一个Activity来启动另一个任意的Activity,不管是自己定义的还是系统定义的。在ActivityGroup(extends Activity)里面,Intent的flag设置对于子Activity的启动方式至关重要。

Intent负责对应用中一次操作的动作、动作涉及数据、附加数据进行描述,Android则根据此Intent的描述,负责找到对应的组件,将 Intent传递给调用的组件,并完成组件的调用。

因此,Intent在这里起着一个媒体中介的作用,专门提供组件互相调用的相关信息,实现调用者与被调用者之间的解耦。

Android应用程序框架的强大之处在于它将Web习惯引入到移动应用程序中。这并不意味着该平台提供了一个强大的浏览器,也不仅限于使用 JavaScript和服务器端资源,而是涉及Android平台的工作原理以及该平台的用户如何与移动设备交互这一核心问题。互联网的强大之处一言以蔽之,在于一切事物通过一次单击即可获得。这些单击的内容对于用户来说就是URL(UniformResource Locator,统一资源定位符)或URI(Uniform Resource Identifier,统一资源标识符)。有效使用URI可帮助用户方便快捷地访问所需的日常信息。“把链接发给我”就说明了一切。

在移动设备上复制桌面设备体验的平台只能吸引一小部分忠实的用户。多级菜单、多次单击在移动市场中通常都不被人所接受。移动应用程序对直观易用的要求比其他任何市场中的应用程序都要高。Intent和IntentFilter将“单击”范例引入到了Android平台移动应用程序使用和开发的核心中。

Intent 结构

Intent是执行某操作的一个抽象描述,它描述了如下内容:

首先, 要执行的动作(action)的一个简要描述,如VIEW_ACTION(查看)、EDIT_ACTION(修改)等,Android为我们定义了一套标准动作:

MAIN_ACTION

VIEW_ACTION

EDIT_ACTION

PICK_ACTION

GET_CONTENT_ACTION

DIAL_ACTION

CALL_ACTION

SENDTO_ACTION

ANSWER_ACTION

INSERT_ACTION

DELETE_ACTION

RUN_ACTION

LOGIN_ACTION

CLEAR_CREDENTIALS_ACTION

SYNC_ACTION

PICK_ACTIVITY_ACTION

WEB_SEARCH_ACTION

此外,我们还可以根据应用的需要,定义我们自己的动作,并可定义相应的Activity来处理我们的自定义动作。

其次, 执行动作要操作的数据(data),Android中采用指向数据的一个URI来表示,如在联系人应用中,一个指向某联系人的URI可能为:content://contacts/1。这种URI表示,通过 ContentURI这个类来描述,具体可以参考android.net.ContentURI类的文档。

此外, 除了action和data这两个重要属性外,还有一些附加属性:

category(类别),被执行动作的附加信息。例如 LAUNCHER_CATEGORY 表示Intent 的接受者应该在Launcher中作为顶级应用出现;而ALTERNATIVE_CATEGORY表示当前的Intent是一系列的可选动作中的一个,这些动作可以在同一块数据上执行。

type(数据类型),显式指定Intent的数据类型(MIME)。一般Intent的数据类型能够根据数据本身进行判定,但是通过设置这个属性,可以强制采用显式指定的类型而不再进行推导。

component(组件),指定Intent的的目标组件的类名称。通常 Android会根据Intent 中包含的其它属性的信息,比如action、data/type、category进行查找,最终找到一个与之匹配的目标组件。但是,如果 component这个属性有指定的话,将直接使用它指定的组件,而不再执行上述查找过程。指定了这个属性以后,Intent的其它所有属性都是可选的。

extras(附加信息),是其它所有附加信息的集合。使用extras可以为组件提供扩展信息,比如,如果要执行“发送电子邮件”这个动作,可以将电子邮件的标题、正文等保存在extras里,传给电子邮件发送组件。

总之, action、 data/type、category和extras 一起形成了一种语言。这种语言使系统能够理解诸如“查看某联系人的详细信息”之类的短语。随着应用不断的加入到系统中,它们可以添加新的action、 data/type、category来扩展这种语言。应用也可以提供自己的Activity来处理已经存在的这样的“短语”,从而改变这些“短语”的行为。

解析 Intent

在应用中,我们可以以两种形式来使用Intent:

· 显式(直接)Intent:指定了component属性的Intent(调用setComponent(ComponentName)或者setClass(Context,Class)来指定)。通过指定具体的组件类,通知应用启动对应的组件。

· 隐式(间接)Intent:没有指定comonent属性的Intent。这些Intent需要包含足够的信息,这样系统才能根据这些信息,在在所有的可用组件中,确定满足此Intent的组件。

对于显式(直接)Intent,Android不需要去做解析,因为目标组件已经很明确,Android需要解析的是那些隐式(间接)Intent,通过解析,将Intent映射给可以处理此Intent的Activity、BroadcastReceiver或Service。

Intent解析机制主要是通过查找已注册在AndroidManifest.xml中的所有IntentFilter及其中定义的Intent,最终找到匹配的Intent。在这个解析过程中,Android是通过Intent的action、type、category这三个属性来进行判断的,判断方法如下:

· 如果Intent指明定了action,则目标组件的IntentFilter的action列表中就必须包含有这个action,否则不能匹配;

· 如果Intent没有提供type,系统将从data中得到数据类型。和action一样,目标组件的数据类型列表中必须包含Intent的数据类型,否则不能匹配。

· 如果Intent中的数据不是content:类型的URI,而且Intent也没有明确指定它的type,将根据Intent中数据的scheme(比如http:或者mailto:)进行匹配。同上,Intent的scheme必须出现在目标组件的scheme列表中。

· 如果Intent指定了一个或多个category,这些类别必须全部出现在组建的类别列表中。比如Intent中包含了两个类别:LAUNCHER_CATEGORY和ALTERNATIVE_CATEGORY,解析得到的目标组件必须至少包含这两个类别。

Intent 和 IntentFilter

Intent是对需要的声明。

IntentFilter是在需要时有能力和有兴趣提供协助的声明。

Intent由一系列描述所需动作或服务的信息构成。本节将介绍所请求的动作以及与之相关的数据。

IntentFilter可以是通用的,也可以特定于向某些Intent提供服务。

Intent的动作属性通常为动词,例如VIEW、PICK或EDIT。很多内置的Intent动作都是作为Intent类的成员定义的。应用程序开发人员也可以创建新动作。要查看信息,应用程序可以采用以下Intent动作:Intent的数据部分采用URI的形式表示,并且可以是信息的任何部分,例如联系人记录、网站位置或对媒体剪辑的引用。

IntentFilter定义Intent与应用程序之间的关系。IntentFilter可以与Intent的数据部分或动作部分相关,或同时与两者相关。IntentFilter还包含一个category(类别)字段。类别可以帮助对动作进行分类。例如,CATEGORY_LAUNCHER类别指示Android包含此Intent-Filter的Activity在主应用程序启动器或主界面上应该处于可见状态。

分发Intent后,系统会计算可用的Activity、Service,以及已注册的BroadcastReceiver,并将 Intent分发给大多数适当的接收者。

clip_image007

IntentFilter通常在应用程序的AndroidManifest.xml中使用标记进行定义。从本质上说,AndroidManifest.xml文件就是一个应用程序描述符文件。

下一节介绍,这是 Android 在移动设备屏幕上显示 UI 元素的机制。

4. Android 视图——显示用户界面( UI )元素

Android 活动通过视图显示UI元素。视图采用以下布局设计之一:

· LinearVertical - 后续的每个元素都排在前一个元素下面,形成一个单一列。

· LinearHorizontal - 后续的每个元素都排在前一个元素右边,形成一个单一行。

· Relative - 后续的每个元素相对于前一个元素有一定的偏移量。

· Table - 与 HTML 表相似的一系列行和列。每个单元格可以包含一个视图元素。

选择一种布局(或布局的组合)之后,就可以用各个视图显示 UI。

视图元素由大家熟悉的 UI 元素组成,包括:

· Button

· ImageButton

· EditText

· TextView(与标签相似)

· CheckBox

· Radio Button

· Gallery 和 ImageSwitcher(用来显示多个图像)

· List

· Grid

· DatePicker

· TimePicker

· Spinner(与组合框相似)

· AutoComplete(具有文本自动补全特性的 EditText)

视图是在一个 XML 文件中定义的。每个元素都有一个或多个属于 Android 名称空间的属性。

Eclipse Android开发入门手册 Eclipse Android开发入门手册 资源下载http://tools.android-studio.orgjdk,Android SDK,开发工具eclipse、Android studio、idea  配置java环境搜索jdk安装对应的包,参照http://www.runoob.com/java/java-environment-setup.html  配置环境 安装eclipse和A... 阅读详情

相关推荐

Eclipse Android开发工具详解

简介:Eclipse曾是Android应用开发的核心IDE,凭借其插件体系和代码编辑功能受到青睐。通过ADT插件,Eclipse能够处理Android项目的创建、构建和调试。本简介详述了Eclipse的安装配置、项目创建、代码编写、资源管理、编译调试、模拟器与设备连接、ADT插件、Gradle集成、Android Studio替代方案及持续学习更新等方面,为Android开发者提供了全面的Eclipse使用指南。

weixin_35649491的博客 1252

使用Eclipse搭建Android开发环境并编译运行HelloWorld

使用Eclipse搭建Android开发环境并编译运行HelloWorld。 报告存档,不是指南,可能有误。 环境搭建 所用工具包:Android开发环境搭建.rar。包含JDK安装包、Eclipse软件、已经下载好的Android SDK包。 安装JDK并配置环境变量 安装JDK 双击jdk应用程序进行安装: 直接点下一步,在下面的界面中选择安装目录并记下此目录,用于环境变量的设置。 点击下一步进行安装,当弹出安装下图的jre的对话框时直接关闭窗口即可,因为jdk自带了jre,不需要单独再装一遍了。

qq_31034951的博客 1万+

Eclipse开发Android应用完整指南

Eclipse曾是Android早期开发的主流IDE,凭借其开源、可扩展和跨平台特性,深受开发者喜爱。使用Eclipse进行Android开发,核心依赖于一套完整的工具链:Java JDK提供语言基础,Eclipse IDE作为开发平台,ADT插件为其赋予Android开发能力,而Android SDK则负责提供开发所需的API与构建工具。这一组合构成了一个功能完备、结构清晰的开发环境,尽管已被Android Studio取代主流地位,但理解其开发流程对于学习Android底层机制仍具有重要意义。

weixin_42601134的博客 1336

Android eclipse中程序调试

一:断点调试 用eclipse开发android程序的时,跟VS一样是可以断点单步调试的.步骤如下.1 设置断点:在编码窗体的左边框上用鼠标双击,或者右键点击菜单,选择 Toggle Breakpoint菜单项即可. 2 在debug模式下运行程序进入调试状态:通过点击工具栏上的小虫按钮或者是在项目右键点击然后选择Debug As,Android Application菜单,启动程序的调试...

weixin_34306593的博客 465

解析Android应用程序运行机制

在标准的Windows和Linux桌面操作系统中,同时可以在不同的窗口中运行多个应用程序,每次只有一个应用程序是当前焦点状态,但其他的应用程序都是一个平等的位置。用户可以随时切换每个应用程序,在不需要应用程序时,也需要用户来关闭应用程序。     但是Android操作系统的应用程序却不是采用这种方式。     Android中每次只有一个应用程序运行在最前面,除了状态栏的位置,当前应用程序将铺满整个屏幕。用户最常见的应用程序就是应用的主页(Home application),这个程序主要显示背景图和应用程序快捷方式、Widget等,用户可以在此激活应用程序。     用户在Android运行

关于Arduino中的常用函数

一、I/O函数 二、时间函数 三、数学函数 abs 返回其参数的无符号值 【abs(12)返回12,abs(-12)也返回12】 constrain 限制一个数字以阻止它超出范围。第一个参数是被限制的数字,第二个参数是范围区间的开始,第三个参数是允许的数字范围区间的结尾。 【constrain(8,1,10)返回8,constrain(11,1,10)返回10,constrain(0,1,10)返回1】 map 将一个范围内的数字映射到另一个范围。第一个参数是要映射到数字,第二个和第三个参数是from范围(

TREE的博客 7323

用Eclipse开发和调试Android应用程序

一、 Android 应用程序概述 1. Android的嫡系组件 Android有四项一等公民(或称为嫡系组件),包括:Activity(活动)、ContentProvider(内容提供程序)、BroadcastReceiver(广播接收器)与Service(服务)。它们都必须宣告于AndroidManifest.xml档案里。 Activity活动 活动是最常用的 An

huluhong的博客 1273

Unity 第一人称视角控制移动、旋转

第一人称视角操作此功能主要是借鉴YouTube,写的蛮好我就搬运过来让大家也试试。

qq_36515472的博客 4202

使用 Eclipse 调试 android 程序(debug 方法)

Android开发之Eclipse调试技巧   使用Google提供的ADT插件可以在Eclipse上很轻松的调试Android程序,我们切换到DDMS标签,选择“Devices”标   签,我们可以看到会出现类似下面的Debug Process(调试进程)、Update Threads(更新线程)、Update Heap(更新   堆)、Cause GC(引起垃圾回收)、Stop ...

liuyun 338

华为od面试手撕真题【分解质因数】

华为od面试手撕真题【分解质因数】

MISAYAONE的博客 1135

Pdu Router(PduR)模块

1. PduR路由基本功能 2. PduR总线网关功能 3. PduR缓存机制 4. 总结

weixin_43759043的博客 3850

用Eclipse开发和调试Android应用程序(一)(转)

前面介绍了Windows环境下,基于Android SDK(2.3) 和 Eclipse(helios)的Android开发环境的搭建,并创建了第一个应用程序Hello Android World。具体挺参考小生的blog:http://blog.sina.com.cn/deaboway 或者http://blog.youkuaiyun.com/deaboway 。 现在,我们已经可以使用Eclipse

xiaohaozi7107的专栏 1199

AI测试入门:基于 RAG 的 LLM 应用程序的测试方法「详细介绍」

一个典型的 RAG 架构包括一个检索器(对知识库进行矢量搜索检索上下文的组件)和一个生成器(从检索器中获取检索上下文以构建提示并生成自定义 LLM 响应作为最终输出的组件)。在大多数情况下, 知识库”由存储在向量数据库(如 ChromaDB)中的向量嵌入组成。

blues_C的博客 1871

android禁止USB调试,android – USB调试:如何撤销“始终允许从此计算机”选项

我已经开始为Android开发了.我正在使用具有不同操作系统的不同计算机. (家用Windows台式PC和Macintosh以及工作中的Windows笔记本)大多数时候我使用我的台式机进行开发,但从昨天开始,我的Nexus 4在Eclipse ADT Devices视图中显示为离线.此问题仅发生在我的台式机上.在其他计算机上,我没有任何问题在eclipse中使设备联机.我已经尝试了很多东西,比如:...

weixin_39922151的博客 1174

Python爬虫实战:如何爬取京东商品评论数据

在本文中,我们介绍了如何使用 Python 爬虫技术爬取京东商品的评论数据。首先,我们分析了京东商品评论的 API 接口和 JSON 数据结构,然后编写了爬虫程序来抓取评论数据,并将数据保存到 CSV 文件中。接着,我们进行了一些基本的数据分析,包括评分分布和简单的情感分析。爬取京东商品评论的数据可以为电商分析、情感分析等提供有价值的信息。你可以在此基础上进行更深入的分析,挖掘更多的商业价值。希望本篇教程能够帮助你了解如何利用 Python 进行电商数据的爬取和分析!

2201_76125261的博客 1648

RK3568平台开发系列讲解:内核启动流程

第 493 行的 ENTRY 指明了了 Linux 内核入口,入口为stext,stext 定义在文件arch/arm/kernel/head.S 中 , 因此要分析Linux 内核的启动流程,就得先从文件arch/arm/kernel/head.S 的 stext 处开始分析。_mmap_switched 定义在文件 arch/arm/kernel/head-common.S,__mmap_switched 最终会调用 start_kernel 函数。⑥、r2=atags 或者设备树(dtb)首地址。

内核笔记 218

使用Eclipse开发Android应用程序

本教程介绍了Eclipse环境中的Android应用程序开发,包括两个示例应用程序的构建。 第一个是基本的入门应用程序,包括构建和调试的所有阶段。 第二个应用程序检查了Android的更复杂功能,包括联系人搜索和Google Maps地址查找。 为了从本教程中获得最大收益,移动开发经验会有所帮助,但不是必需的。 Android应用程序需要Java™编程技能,但本教程不是明确要求。 关于本教...

cuxiong8996的博客 1万+

华为OD机试真题:明日之星选举 (Java/Py/C/ C++/JS/GO)

华为OD机试(机考)双机位C卷 【明日之星选举】,提供Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解,以及在线OJ模拟做题。华为OD机试 - 明日之星选举。

qq_45776114的博客 919

eclipse开发安卓android程序环境

一、.安装JDK,不再赘述 二、安装eclipse,不再赘述 三、安装SDK,也就是安卓开发库 1.下载并安装AndroidSDK 首先,下载Android SDK Tools,翻过墙的朋友可以去Google Android的官网上下载(http://developer.android.com/sdk/index.html)。不愿意翻墙的朋友,可以去我的bd网盘上下载(http://pan.baidu.com/s/1nt8BcBB),或者去这个网站下载(http://www.androiddevtools.

pz641的博客 7265

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Android开发和调试

开发和调试<br />这一节将介绍在android上开发调试应用程序。它将教会我们如何创建,编译,运行以及调试android代码。或者,你也可以从Hello Android tutorial.开始<br /> 主要内容在eclipse上开发android 应用程序利用其他IDE和工具开发android应用程序 给应用程序签名ApiDemo 示例程序用法调试设备上的调试和测试设置顶端调试技巧编译安装一个android应用程序移除android程序Eclipse 技巧在eclipse上开发Android应用程序

gamecicn的专栏 3万+

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

Windows 下使用 Eclipse 进行安卓开发环境搭建

摘要:本文详细介绍了在Windows系统下使用Eclipse搭建安卓开发环境的完整流程。由于Google已停止对Eclipse ADT的支持,该指南主要适用于旧项目维护和学习目的。内容包括环境要求、Java JDK安装、Eclipse配置、ADT插件安装(提供在线/离线/手动三种方式)、SDK管理、项目创建及模拟器配置等关键步骤。特别提供了版本兼容性建议、国内镜像源配置、性能优化参数等实用技巧,并附有详细的命令行操作和目录结构说明。适合需要在资源受限环境中进行传统安卓开发的用户参考。

深山技术宅的博客 1748

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Eclipse开发Android应用程序入门

Eclipse开发Android应用程序入门 By Chris Blunt 翻译:赵锟 原文出处:http://www.smashingmagazine.com/2010/10/25/get-started-developing-for-android-with-eclipse/ 如今的移动设备应用程序开发充满着让人振奋的东西。功能强

lqxandroid2012的专栏 2万+
上一篇: 用Eclipse开发和调试Android应用程序(一)
下一篇: 用Eclipse开发和调试Android应用程序(二)
周三山
博客等级 码龄23年 303粉丝 40原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值