• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >Android > Android入门(一),Android入门(

Android入门(一),Android入门(

作者:网友 字体:[增加 减小] 来源:互联网 时间:2017-05-26

网友通过本文主要向大家介绍了android开发入门,android入门,android入门到精通,android入门书籍,android入门到精通pdf等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

Android入门(一),Android入门(


原文链接:http://www.orlion.ga/387/

一、安卓的系统架构

    1、

 

    1. linux内核层,这一层为安卓设备提供底层的驱动

    2. 系统运行库层,这一层通过一些C/C++库来为Android系统提供了主要的特性支持。如SQLite库提供了数据库支持,OpenGL|EL库提供了3D绘图的支持,Webkit库提供了浏览器内核的支持。另外还有安卓运行时库,主要提供一些核心库能够允许开发者使用java开发android应用。另外Android运行时库还包含了Dalvik虚拟机,它使得每一个android应用都能运行在独立的进程中,并拥有一个自己的Dalvik虚拟机实例

    3. 应用框架层,这一层主要提供了构建App时可能用到的API

    4. 应用层,所有安装在手机上的应用程序都属于这一层

 

    Android提供了什么:

    1. 四大组件,Android四大组件分别是活动Activity、服务Service、广播接收器Broadcast Receiver和内容提供器Content Provider。其中Activity是所有Android应用程序的门面,凡是在应用中看到的东西都是放在Activity中的。Service一直在后台默默运行,即使用户退出了应用,服务仍然是可以继续运行的。Broadcast Receiver可以允许应用程序接收各处的广播消息,如电话、短信等,当然自己的应用也可以向外发出广播消息。Content Provider则为应用程序之间共享数据提供了可能,比如想要读取系统电话本中的联系人,就需要通过内容提供器来实现。

    2. 丰富的系统控件,Android系统为开发者提供了丰富的系统控件,使得我们可以很轻松地编写出漂亮的界面。当然如果你品味比较高,不满足于系统自带的控件效果,也完全可以定制属于自己的控件。

    3. SQLite数据库,Android系统还自带了这种轻量级、运算速度快的嵌入式关系数据库,不仅支持标准SQL还可以通过Android封装好的API进行操作

    4. 地理位置定位,Android基本都内置了GPS

    5. 强大的多媒体,Android提供了丰富的多媒体服务,如音乐、视频、录音、拍照、闹铃等,这些都可以在APP中通过代码控制。

    6. 传感器,很多手机都内置了多种传感器,如方向传感器、加速度传感器

 

二、第一个Android项目HelloWorld

    1、创建一个安卓project

    File->new-> Android Application Project

    然后一路next。

    2、运行项目

    首先创建一个android模拟器,点击eclipse工具栏Android Virtual Device Manager

    然后项目右键run as->Android Application。

 

    3、项目目录介绍:

        a.src:存放java代码的地方

        b.gen:自动生成的内容,主要有一个R.java文件,在项目中任何地方添加的任何资源都会在其中生成一个对应的资源id,不要修改该文件

        c.assets:主要可以存放一些随程序打包的文件。另外如果在程序中用到了WebView加载本地网页的功能,所有网页相关的文件也都放在这个目录下

        d.bin:主要包含一些在编译时自动产生的文件,其中会有一个当前项目编译好的apk安装包

        e.libs:如果项目中用到了第三方jar包,就要把jar包放到libs目录下,放在这个目录下的jar包都会被自动添加到构建路径中

        f.res:项目中使用到的所有图片、布局、字符串等资源都放在这个目录下,前面提到的R.java中的内容也是根据这个目录下的文件自动生成的。这个目录下有很多子目录,图片放在drawable目录下,布局放在layout目录下,字符串放在values目录下

        g.AndroidMainfest.xml:这是整个项目的配置文件,在程序中定义的所有四大组件都需要在这个文件中注册。另外还可以在这个文件中给App添加权限声明。也可以重新指定构建项目时指定的程序最低兼容版本和目标版本。

        h.project.properties:这个文件通过一行代码指定了编译程序时所使用的SDK版本。

 

三、HelloWorld如何运行起来的

首先打开AndroidMainfest.xml文件可以找到如下代码:

<activity
            android:name=".MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

这段代码表示对MainActivity这个activity注册,没有在AndroidMainfest.xml里注册的Activity是不能使用的。其中intent-filter里的两行代码很重要,<action android:name="android.intent.action.MAIN"/>和<category android:name="android.intent.category.LAUNCHER"/>表示MainActivity是这个项目的主Activity,在手机上点击应用图标,首先启动的就是这个Activity。

    那么MainActivity有什么用呢?Activity是Android应用程序的门面,凡是在应用中看到的东西都是放在Activity中的,因此程序运行的界面就是MainActivity这个Activity。MainActivity.java代码:

package ga.orlion.helloworld;

import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;

public class MainActivity extends Activity {

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
	}

	@Override
	public boolean onCreateOptionsMenu(Menu menu) {
		// Inflate the menu; this adds items to the action bar if it is present.
		getMenuInflater().inflate(R.menu.main, menu);
		return true;
	}

	@Override
	public boolean onOptionsItemSelected(MenuItem item) {
		// Handle action bar item clicks here. The action bar will
		// automatically handle clicks on the Home/Up button, so long
		// as you specify a parent activity in AndroidManifest.xml.
		int id = item.getItemId();
		if (id == R.id.action_settings) {
			return true;
		}
		return super.onOptionsItemSelected(item);
	}
}

MainActivity是继承自Activity,Activity是Android系统提供的一个基类,我们项目中所有的活动都必须要继承它才能拥有Activity的特性,然后可以看到MainActivity中有三个方法,onCreateOptionsMenu()这个方法是用来创建菜单的,我们可以先无视它,主要看一下onCreate()方法,onCreate()方法是一个活动呗创建时必定要执行的方法。Android程序的设计讲究逻辑与视图分离,不推荐Activity中直接写界面,通常是布局文件中写界面然后在Activity中引入进来。onCreate()方法第二行调用了setContentView()方法,就是这个方法给当前的Activity引入了一个activity_main布局。布局文件都是定义在res/layout目录下。打开activity_main.xml:

<RelativeLayout xmlns:android="http://schemas.and



 
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • android入门,看这一本书就够了,android入门,
  • Android开发笔记(8)——调用子Activity,androidactivity
  • Android开发笔记(2)——ViewGroup,androidviewgroup
  • Android开发专业名词及工具概述,android名词
  • Android开发之ActionBar,androidactionbar
  • Android开发7:简单的数据存储(使用SharedPreferences)和文件操作,
  • android开发游记:meterial design 5.0 新增控件介绍及使用方法
  • Android入门(一),Android入门(
  • Android开发:内存机制分析——堆和栈
  • Android开发遇到的异常及解决办法,android解决办法

相关文章

  • 2017-05-26【Android基础】Activity启动模式以及Intent Flags 与 栈 的全面解析
  • 2017-05-26Android JDK配置使支持Gradle更新,Maven安装,gradlemaven
  • 2017-05-26Android属性动画
  • 2017-05-26安卓第十八天笔记--简单动画,安卓第十八天--
  • 2017-05-26Android特效专辑(十二)——如何仿支付宝咻一咻功能实现波纹扩散特效
  • 2017-05-26Android 配置文件(activity)元素
  • 2017-05-26从源码的角度理解四大组件的工作过程——Android开发艺术探索笔记
  • 2017-05-26[android] 数据的异步加载和图片保存,
  • 2017-05-26tomcat+java的web程序持续占cpu问题调试
  • 2017-05-26不带数据和返回的Activity跳转,返回activity跳转

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 高仿360手机卫士应用源码,高仿360卫士源码
    • Android中使用Notification实现进度通知栏(示例三),notification进度条
    • Android开发学习之路--传感器之初体验
    • Android Bitmap占用内存计算公式,androidbitmap
    • 安卓多线程间通信和多进程之间通信有什么不同?分别怎么实现?,安卓多线程
    • Kotlin的android扩展:对findViewById说再见(KAD 04),kotlinfindviewbyid
    • Activity 启动模式,activity启动模式
    • Xamarin.Forms跨平台开发入门-第二部分:深入解析,
    • 安卓当下最流行的吸顶效果的实现(转),安卓当下
    • Kotlin中的“忍者”函数 —— 理解泛型的能力(KAD 12),kotlinkad

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有