黑马程序员 安卓基础day01

本文介绍了3G通信技术的特点及标准,并详细讲解了Android操作系统的发展历程、版本迭代及其开发环境搭建过程,包括SDK配置、模拟器使用及简单应用开发实践。

什么是3G

1G 第一代的通信技术,主要使用的是模拟信号,那么传输的数据量不能过大。通话和短信发送。

2G第二代的数字通信技术,主要使用数字信号,可以传输比较大的数据量。图片、视频都是可以的。

3G第三代的数字通信技术。主要采用的是数字增强技术,可以传输一些高清的数据(HD)

4G直接可以实现更加流畅的流媒体数据的传输。

3G标准的技术

中国联通使用的是WCDMA(世界上大部分3G网络都采用的是该标准) 

中国电信使用的是CDMA2000(日、韩和北美使用);

中国移动使用的是具有自主知识产权的TD-SCDMA(只有中国才使用)

1-4G

1G

模拟制式,语音通话代表作:大哥大

2G

是数字的信号 主要用途手机能发短信了2G可以划分为2.5G2.75G

2.5G

2.5G通过GPRS,2.75G通过EDEGCDMA技术。上网的速率逐渐的变快了

例如:彩信、彩铃、游戏下载、等目前你的手机上的功能

3G

  WCDMA(联通), CDMA2000(电信), TD-SCDMA(移动) 主要的不同也是传输的速率变快了、最高可以达到2M,像可视视频、流媒体、GPS、在线直播等

3.5G

HSDPA, HSDPA+ 高清电影.

4G

TD-LTE  下载速度: 50Mbps  6MB  上传速度: 10Mbps  1MB

 

常见手机OS

Android              à Google

IOS                      à Apple

Window Phone       à Windows

塞班                     à 诺基亚

黑莓                     à 黑莓

图片

Andorid

Android is a software stack for mobiledevices that includes an operating system, middleware and key applications. TheAndroid SDK provides the tools and APIs necessary to begin developingapplications on the Android platform using the Java programming language.

Android是一个基于移动设备的软件栈。软件栈中包含操作系统、中间件和一些关键的应用程序。Android提供的SDK中包含的工具和API对于那些准本从事Android应用开发的人而言是必要的。

AndroidGoogle基于Linux系统之上使用Java语言进行封装的一个手机的操作系统平台。

Windows XP :操作系统、线程管理机制、ServiceIENotepad  PC

Android    :操作系统、管理应用程序、通信录Phone

举例:

Andorid的手机、andorid的平板、机顶盒、手表、很多的android只能设备。物联网。

u  Android的版本

1.x   是一个不成熟的版本。[基于手机]

2.x 比较成熟的2.2,更加成熟的2.3.3[基于手机]

3.x 比较成熟的平板上使用的Android系统。[基于平板]

4.x 该版本是一个成熟的整合了平板和手机的Android系统。

目前最新的是4.2版本。当然API17Logo

 

Android平台

图片

虚拟机的区别:

JVM:

.java --> javac --> .class --> jar --> .jar

基于的架构堆栈

 

DVM:

.java --> javac --> .class --> dx.bat --> .dex

基于的架构寄存器(cpu上的一块高速缓存)

多学一招:

SDKManager中下载不成功解决方案

配置 SDK ManagerOptions

       1. Force 勾上

       2. 修改C:\Windows\System32\drivers\etc\hosts文件

              74.125.113.121developer.android.com

              203.208.46.146 dl.google.com

              203.208.46.146 dl-ssl.google.com

SDK安装目录结构

图片

add-ons        认是空

docs               供的是androidAPI文档和教程

platforms        android支持的平台,该目录默认是空的,需要使用SDK管理器进行下载。

ptform-tools   adb.bat   dx.bat

samples          提供的案例

temp                     存储临时

tools                     android.bat  安卓工具dms.bat 视图管理工具 emulator模拟器工具

 

AVD创建

以上的环境搭建好了,可以进行编程了,但是程序写好后在哪里运行呢?

AVDAndroid的模拟器设备。就是一个仿真的Andorid手机程序。如思科的模拟器。

点击Eclispe工具栏中的绿色机器人:

 
 图片
 

 

 

 

 

 

 

 

 

 

 

 

启动AVD如下图:

 
 图片
 

 

 

 

 

 

 

 

 


♠ 多学一招:创建模拟器的本质?

C:\Documents and Settings\Administrator\.android默认情况下创建新的模拟器其实就是在该目录中创建新的文件,进行AVD配置信息的存储。

jnbavd2.2.ini         à 指定avd的文件夹路径和目标的版本

config.ini                     à 配置模拟器的各种参数。如:皮肤。SDCARD等信息。

多学一招:

Home键和Esc键的区别?

Home键退出的时候不会讲界面销毁。

Esc键会将UI界面销毁。

Adb工具

Adbndrod的调试桥。该工具主要的任务是使得PC的操作系统和Android的操作系统可以进行指令的通信。

举例:android命令?

直接切换到android.bat的目录输入该命令显示SDKAVD的管理器程序。

因此如果需要的话可以配置path环境变量。

举例:adb安装应用程序?

D:\sdk\android-sdk-windows\platform-tools>adbdevices

List of devices attached

emulator-5554   device

开发者可以使用adbinstall 路径\xxx.apk安装指定的文件

D:\sdk\android-sdk-windows\platform-tools>adbinstall d:\souhuxinwen.apk

116 KB/s (2859751 bytes in 24.015s)

       pkg: /data/local/tmp/souhuxinwen.apk

Success

卸载可以使用以下的命令

D:\sdk\android-sdk-windows\platform-tools>adbunstall 指定项目的核心包名

 

Android体验

1. 键创建一个Android Project

2. 选中项目右键àRun as àAndroidApplication

3. 直接查看运行结果

图片

4. 项目的目录详解

 
  
 图片

src                主要存储的是一些java的源文件。

gen                主要存储的是ADT自动生成的一些文件和包。R.java自动生成所有资源的ID

Android2.2     主要存储的是一些AndriodAPI

assets             主要存储资源,但是该资源不被自动生成ID

res                 主要存储资源,该资源被R文件进行自动管理。

drawable-hdpi        存储可以绘制的图形,高清图片

drawable-mdpi       中清图片

drawable-ldpi         低清图片

layout                   主要存储的是布局管理器文件

values                   主要存储项目中需要使用到的数据。

AndroidManifest.xml     项目的清单文件,主要配置项目的功能。
default.properties          项目的默认的配置文件,主要配置项目的运行环境。

 

体验程序的详解

图片

android中开发和原来的javase以及javaee不同,所有的业务逻辑和数据之间是通过配置文件自动分离的。业务逻辑主要使用src目录,资源主要使用res目录。

Android的打包

1. 方式一:手工导出apk文件

右键项目à Andriod工具à Export Signed Application packageà 填写个人的信息

以后的keystore可以继续使用。

2. 方式二:默认方式

默认情况下eclispe会在avd的文件夹下自己安装一个debug.keystore,该证书文件只能在运行的时候使用,不能在实际的生产环境中使用。

因此可以在项目的bin目录中直接可见项目的apk文件。

 

Eg:打电话应用

拨打电话

       1.步骤

              Button节点中添加onClick属性指定一个方法名

              Activity中定义一个public void 方法名 (View view)

              获取文本框中的号码

              创建意图设置动作设置数据

              使用意图开启Activity

       2.注意

              必须声明权限: android.permission.CALL_PHONE, 否则拨打电话时会抛出异常

              声明权限后安装软件时会有提示

配置打电话的权限

 <uses-permission android:name="android.permission.CALL_PHONE" />

MainActivity代码:

public class MainActivity extends Activity {

      

     private EditText numET;    // 由于多个方法使用定义为成员变量

 

public void onCreate(BundlesavedInstanceState) {

            super.onCreate(savedInstanceState);

            setContentView(R.layout.main);

           

numET = (EditText) findViewById(R.id.numET); // 找到文本框

Button callBT = (Button)findViewById(R.id.callBT); // 找到按钮对象

     callBT.setOnClickListener(new MyOnClickListener());// 添加监听器

        }

       

        private class MyOnClickListener implements OnClickListener{       //定义监听器类实现OnClickListener

        public void onClick(Viewv) {          // 定义事件对应的处理方法

      String num = numET.getText().toString();   // 获取其中号码

      Intent intent = new Intent();       // 创建意图对象

      intent.setAction(Intent.ACTION_CALL);   // 设置意图的动作(拨打电话)

      intent.setData(Uri.parse("tel:" + num)); // 设置意图的数据(电话号码)

            startActivity(intent);   // 使用意图开启一个界面(拨打电话的界面)

        }  

        }

    }

 

界面xml代码:

<!--android:textAppearance文本的属性 -->

<!-- ?android:attr/textAppearanceLarge表示引用android里面的一个属性值 -->

<TextView

        android:layout_width="fill_parent"

        android:layout_height="wrap_content"

        android:text="@string/insert_number"/>

    <EditText

        android:id="@+id/numET"

        android:layout_width="fill_parent"

        android:layout_height="wrap_content"

        android:inputType="phone"/>

    <Button

        android:id="@+id/callBT"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:onClick="onClick"

        android:text="@string/call" />

 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值