实验一 Android开发环境搭建与Hello world

更新时间:2023-11-06 12:43:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

实验一 Android开发环境搭建与Hello world

一、实验目的

学会搭建并安装Android开发环境,并实现Hello World应用开发。

二、主要仪器设备及套数

计算机

三、实验内容

搭建开发环境;安装Java JDK,下载Eclipse, 解压Eclipse;官方下安装 ADT (Android Development Tools);安装Android;安装手机USB驱动;建立新项目,实现Hello World

四、程序代码

package com.example.helloandroid;

import android.support.v7.app.ActionBarActivity; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem;

public class MainActivity extends ActionBarActivity {

@Override

protected void onCreate(Bundle savedInstanceState) { }

@Override

public boolean onCreateOptionsMenu(Menu menu) { }

@Override

public boolean onOptionsItemSelected(MenuItem item) {

// Handle action bar item clicks here. The action bar will

1

super.onCreate(savedInstanceState); setContentView(R.layout.activity_main);

// Inflate the menu; this adds items to the action bar if it is getMenuInflater().inflate(R.menu.main, menu); return true;

present.

}

}

// 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 super.onOptionsItemSelected(item);

return true;

五、实验结果

六、实验小结

这个实验很简单,主要是要我们学习Android开发环境的搭建,了解Android应用开发程序的开发过程,生成Android应用程序框架以及配置相应的运行参数。

2

实验二 界面设计:空间与布局

一、实验目的

Android编程基础,UI设计;使学生了解Android编程原理; 掌握界面控

件设计;掌握控件的事件处理编程。

二、主要仪器设备及套数

计算机

三、实验内容

了解各种空间的基本功能: Menu, TextView EditText ,Button, Radio

button, List; 了解布局layout 的应用;利用布局安排各种控件,设计良好用户界面 。

四、程序代码

Package com.example.Edittext; Import android.os.Bundle; Import android.app.Activity; Import android.view.Menu;

Import android.widget.RadioGroup;

Import android.widget.RadioGroup.OnCheckedChangeListener; Import android.widget.TextView;

public class MainActivity extends Activity {

RadioGroup button01; TextView show;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState); setContentView(R.layout.activity_main);

//获取界面上button01,show两个组件对象

Button01=(RadioGroup)findviewByid(R.Id.button01); Show=(TextView)findviewByid(R.Id.button01); //为RadioGro组件的oncheck事件绑定时间监听器

Button01.setoncheckedchangelistener(new OnCheckedChangeListener()

{

@Override

public void onCreateOptionMenu(RadioGroup group,int checkedId) {

3

//根据勾选的单选按钮来动态改变tip字符串的值 String tip=checkedId==R.id.boy?“男人”:“女人”; //修改show组件中的文本 Show.setText(tip); } }); } }

@Override

public boolean onCreateOptionMenu(Menu menu) {

getMenuInflater().inflate(R.menu.main,menu); }

return true;

五、实验结果 运行:

效果:

4

六、实验小结

通过这次试验,我对安卓编程有了进一步的认识,对各控件的熟练应用会帮

我们大大减少少编程量,另外界面的布局还会影响到设计界面的美观。

5

实验三 Android触控监听器的使用

一、实验目的

1.掌握Android项目中界面显示的基本方法; 2.掌握OnTouchListener监听器的设计与使用 3.掌握Android手机硬件API的调用方法。

二、主要仪器设备及套数

计算机

三、实验内容

在Android平台下设计实现滑动的方块应用 1. 使用屏幕触控,图拽方块移动。

2.暂不考虑横屏切换

四、程序代码

控制文件:

package com.ex06_03;

import android.app.Activity; import android.os.Bundle; import android.util.Log;

import android.view.MotionEvent; import android.view.View;

import android.view.View.OnTouchListener;

public class MainActivity extends Activity {

int x1=150,y1=50; TestView testView; @Override

public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); testView = new TestView(this);

testView.setOnTouchListener(new mOnTouch()); testView.getXY(x1, y1); setContentView(testView); }

private class mOnTouch implements OnTouchListener {

public boolean onTouch(View v, MotionEvent event) {

6

if (event.getAction() == MotionEvent.ACTION_MOVE)

x1 = (int) event.getX(); y1 = (int) event.getY();

{ //在屏幕上滑动(拖动)

testView.getXY(x1, y1); setContentView(testView);

}

if (event.getAction() == MotionEvent.ACTION_DOWN)

x1 = (int) event.getX(); y1 = (int) event.getY();

Log.i(\

{ //点击

Log.i(\ testView.getXY(x1, y1); setContentView(testView);

}

package com.ex06_03;

import android.content.Context; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import android.view.View;

public class TestView extends View {

int x, y;

public TestView(Context context) { }

void getXY(int _x, int _y) { }

/* 下面编写绘制小球的代码,参见教材例6-3 */

x = _x; y = _y; super(context); }

}

return true;

7

protected void onDraw(Canvas canvas) {

super.onDraw(canvas); /*设置背景为青色*/

canvas.drawColor(Color.CYAN); Paint paint=new Paint(); /*去锯齿*/

paint.setAntiAlias(true); /*设置paint的颜色*/

paint.setColor(Color.BLACK); /*画一个实心圆*/

canvas.drawRect(x, y, x+30, y+30,paint); paint.setColor(Color.GREEN);

/*canvas.drawRect(x-6, y-6, 3,3, paint);*/ }

界面布局:

xmlns:android=\ android:layout_width=\ android:layout_height=\ android:orientation=\ >

android:layout_width=\ android:layout_height=\ android:text=\ />

五、实验结果

8

六、实验小结

简单触摸屏事件指在触摸屏上按下、抬起、滑动的事件,在Android系统中,

通过OnTouchListener监听接口来处理屏幕事件当在View的范围内进行按下、抬起、滑动等动作时都会触发该事件。在本次试验中我学会了简单应用Android触控监听器来操作屏幕,虽然在实验中遇到了一些困难,但还是受益良多。

9

实验四 网络访问与服务

一、实验目的

掌握Android网络访问方法。

二、主要仪器设备及套数

计算机

三、实验内容

1. 了解手机WEB网站访问编程,通过HttpResponse类,读入网络数据 2. 通过网络进行数据访问 3. 了解数据库使用

四、程序代码

publicclass slide8_3 extends Activity{

Public Sting myhttpget(String url) throws Exception{

String out =null; Try{

HttpClient client=newDefaultHttpClient(); HttpGet request=newHttpGet(url);

HttpResponse request=client.execute(request); out=EntityUtils.toString(response.getEntity()); }catch(IOException e){ e.printStackTrace(); }

return out; }

Public String myhttppost(String url,String name,String value) Throw Eeception{

String out=null;

try{

HttpClient client=newDefaultHttpClient(); HttpPost request=newHttpPost(url);

ListpostParameters=newArrayList();

postParameters.add(newBasicNameValuePair(name,value));

UrlEncodedFormEntity=newEncodedFormEntity=newUrlEncodedFormEntity( postParameters);

request.setEntity(formEntity);

HttpResponse response=client.execute(request); out=EntityUtils.toString(response.getEntity());

10

}catch(IOException e){ e.printStackTrace(); }

return out; @Override

public void onCreate(Bundle savedInstanceState) {

}

super.onCreate(savedInstanceState); setContentView(R.layout.activity_main);

Final TextViewtextview=(TextView)findviewbyid(R.id. TextView01); FinalEditVieweditview=(EditView)findviewbyid(R.id. EditText1); finalEditText name=(EditText)findviewbyid(R.id. EditText2); finalEditText value=(EditText)findviewbyid(R.id. EditText3); Button btn=(Button)this.findviewbyid(R.id.Button1); btn.setOnClickListener(newButton.OnClickListener(){

Public void onclick(View v){

Try{

textView.setText(myhttpget(editText.getText().toString()++name.getText().toString()+”=”+value.getText().toString()));

}catch(Exception e){

e.printStackTrace(); } } }); Button btn2=(Button)this.findviewbyid(R.id.Button2); Btn2.setOnClickListener(newButton.OnClickListener(){

Public void onclick(View v){

Try{

textView.setText(myhttppost(editText.getText().toString(),name.getText().toString(),

value.getText().toString()));

}catch(Exception e){ e.printStackTrace(); } } });

11

”?”

} }

五、实验结果 Get:

Post:

12

六、实验小结

在这次试验中,我基本掌握了Android访问网络的基本方法,了解了手机WEB网站访问编程,通过HttpResponse类,读入网络数据,再通过网络进行数据访问,最后还基本学会了数据库使用。

13

实验五 Android平台下手电应用的设计开发

一、实验目的

1.掌握Android项目中界面显示的基本方法;

2.掌握OnTouchListener监听器的设计与使用 3.了解Android手机硬件API的调用方法。

二、主要仪器设备及套数

计算机

三、实验内容

1. 使用屏幕触控

2. 调用相机的闪光点硬件,开启手电功能 3. 暂不考虑横屏切换

四、程序代码

package cn.lee.handlight;

import android.app.Activity; import android.hardware.Camera;

import android.hardware.Camera.Parameters; import android.os.Bundle; import android.os.Process; import android.view.View;

import android.view.View.OnClickListener; import android.view.WindowManager; import android.widget.ToggleButton;

public class HandLightActivity extends Activity implements OnClickListener { private ToggleButton toggleButton;

private Camera camera = Camera.open();

/** Called when the activity is first created. */ @Override

public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main);

toggleButton = (ToggleButton) this.findViewById(R.id.toggleButton1); toggleButton.setOnClickListener(this);

getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);

14

// // }

//保持屏幕 }

@Override

public void onClick(View v) {

ToggleButton tb = (ToggleButton) v;

Camera.Parameters param = camera.getParameters(); if(!tb.isChecked()){

param.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH); toggleButton.setBackgroundColor(0x30ffffff); }else{

param.setFlashMode(Camera.Parameters.FLASH_MODE_OFF); toggleButton.setBackgroundColor(0xffffffff); }

camera.setParameters(param); }

@Override

protected void onPause() { camera.release();

Process.killProcess(Process.myPid()); super.onPause(); }

四、实验结果

15

五、实验小结

能够掌握Android项目中界面显示的基本方法,对监听器的机制和实现监听的四种方式有所了解,会使用Android手机硬件API的调用方法、实现功能,并能独立完成程序增强了自己的动手实践能力,并且成功将实验项目导入手机中且运行成功。

16

本文来源:https://www.bwwdw.com/article/xbp2.html

Top