数据存取、多媒体应用.ppt

上传人:tian****1990 文档编号:11536389 上传时间:2020-04-27 格式:PPT 页数:40 大小:686KB
返回 下载 相关 举报
数据存取、多媒体应用.ppt_第1页
第1页 / 共40页
数据存取、多媒体应用.ppt_第2页
第2页 / 共40页
数据存取、多媒体应用.ppt_第3页
第3页 / 共40页
点击查看更多>>
资源描述
智能手机应用开发,basedonandroid2011.5,内容包括:,1、Android平台概述2、搭建Android开发环境3、第一个Android应用程序4、Android用户界面设计5、Activity、Intent、Service、BroadcastReceiver6、Android中的数据存取7、Android的多媒体应用8、应用实例:a、b、c、d,课程结构,开放手机联盟(OHA)Android平台综述:平台介绍、开发者社区开发环境:构建Android开发环境应用程序:应用程序结构典型应用:用户界面、图形编程数据存取、网络连接硬件访问,获取Android资料的途径,下载sdk等相关软件查看文档在线帮助开发社区国内需要代理才能访问,6、Android中的数据存取,onandroid,数据存取方式,Preference“键-值”方式存储,以xml文件的形式保存File采用java.io.*库所提供I/O接口读写文件SQLiteSQLite是轻量级的嵌入式数据库引擎ContentProvider用于实现不同应用程序之间的数据共享,1、Preference,主要用于存储数据较少的场合,比如配置信息文件位置:/data/data/shared_prefs/*.xml需要用到接口:SharedPreferences及其内部接口:SharedPreferences.Editor取得接口:Context.SharedPreferences(filename,mode)SharedPreferences.edit()数据类型、数据操作:int、flaot、string、boolean等putString(key,value)getString(key,defValue),实例:Test_of_Preference,定义main.xml:一个EditText用于键入数据三个Button分别用于将数据写入xml文件、从文件获取数据并显示、清除文件中的数据定义sharedpreferences.xml:一个TextView用于显示从文件中获取的数据,et1=(EditText)findViewById(R.id.editText1);button1=(Button)findViewById(R.id.button1);button2=(Button)findViewById(R.id.button2);button3=(Button)findViewById(R.id.button3);,textView1=(TextView)findViewById(R.id.textView1);,创建接口sp1、spEditor1以键值方式加入数据以StringKey为索引来获取数据清除数据,privateSharedPreferencessp1;sp1=this.getSharedPreferences(test,MODE_PRIVATE);SharedPreferences.EditorspEditor1=sp1.edit();,spEditor1.putString(TEXT,et1.getText().toString();spEmit();,Stringstring1=sp1.getString(TEXT,);textView1.setText(string1);,spEditor1.clear().commit();,运行结果:,2、File,文件可用来存放大量数据,如文本、图片、音频等默认位置:/data/data/files/*.*java.io.*库提供I/O接口实现本地文件读写文件输入流的获取Context.openFileInput(Stringname)文件输出流的获取Context.openFileOutput(Stringname,intmode)包内资源(res/raw/)文件的读取Resources.openRawResource(R.raw.file),实例:Test_of_File,定义main.xml:两个EditText、两个Button写文件writeFile(str):,privatevoidwriteFile(Stringstr)tryFileOutputStreamoutput=openFileOutput(FILE_NAME,MODE_APPEND);output.write(str.getBytes();output.close();catch(Exceptione)Log.e(File_IO,e.toString();this.finish();,读文件readFile():,privateStringreadFile()tryFileInputStreaminput=openFileInput(FILE_NAME);bytebuffer=newbyteinput.available();input.read(buffer);input.close();Stringstr=newString(buffer);returnstr;catch(Exceptione)Log.e(File_IO,e.toString();this.finish();returnnull;,editText2.setText(readFile();,运行结果:注意:写文件时用的MODE_APPEND模式,3、SQLite,SQLite轻量级嵌入式数据库引擎,面向资源有限的设备没有服务器进程所有数据存放在同一文件中跨平台,可自由复制SQLiteOpenHelper帮助类,用于管理数据库创建和版本更新onCreate(SQLiteDatabasedb)onUpgrade(db,intold_ver,intnew_ver)sqlite3:位于/tools,实例:Test_of_SQLite,DatabaseHelper继承自SQLiteOpenHelper重写了onCreate()、onUpgrade()方法实现insert、del、query、close等方法ListView显示记录,字段对应成TextViewListView的onItemClick()实现删除记录数据库文件路径:/data/data/database/*.db,privateSQLiteDatabasedb;publicvoidinsert(ContentValuesvalues)SQLiteDatabasedb=getWritableDatabase();db.insert(TABLE_NAME,null,values);db.close();publicvoiddel(intid)if(db=null)db=getWritableDatabase();db.delete(TABLE_NAME,_id=?,newStringString.valueOf(id);publicvoidonCreate(SQLiteDatabasedb)this.db=db;db.execSQL(CREATE_TABLE);,DatabaseHelper.java,DatabaseHelperdbHelper=newDatabaseHelper(this);Cursorcursor=dbHelper.query();Stringfrom=_id,name,url,notes;intto=R.id.textView1,R.id.textView2,R.id.textView3,R.id.textView4;SimpleCursorAdapterscadapter=newSimpleCursorAdapter(this,R.layout.favoritelist,cursor,from,to);ListViewlistView=getListView();listView.setAdapter(scadapter);AlertDialog.BuilderadBuilder=newAlertDialog.Builder(this);,Query_Test.java,listView.onItemClickadBuilder.setMessage(确认删除?).setPositiveButton(Y,newOnClickListener().setNegativeButton(N,newOnClickListener();AlertDialogaleraDialog=adBuilder.create();aleraDialog.show();,删除记录并重建ListView,运行结果:,4、ContentProvider,与Activity、Service、BroadcastReceiver同属Android应用程序基本组件之一用于保存和检索数据,实现了数据的跨应用共享Android中各应用均运行在自己的进程中,互相访问的ContentProvider接口统一定义在android.provider包内,涵盖了常见的数据类型如音视频、图片、联系人等实现的方法包括:insert、delete、qurey、update等,URIContentProvider用以实现数据共享的对象ContentResolverContentProvider的客户端接口客户端通过getContentResolver()获得接口提供与ContentProvider对应的方法间接地通过操作Resolver来操作Provider一个Provider可以对应多个Resolver用户自定义系统:ContentProvider,实例:Test_of_ContentProvider,系统ContentProvider添加联系人:,Stringname=editText1.getText().toString();Stringnotes=editText2.getText().toString();ContentResolvercontentResolver1=getContentResolver();ContentValuescontentValues1=newContentValues();Uriuri1=Contacts.People.CONTENT_URI;contentValues1.put(People.NAME,name);contentValues1.put(People.NOTES,notes);trycontentResolver1.insert(uri1,contentValues1);,运行结果:,7、Android的多媒体应用,onandroid,Android的多媒体,Android实现了常见媒体格式的编解码机制图片:jpeg、gif、png、bmp音频:3gp、mp3、wav视频:3gp、mp4Android提供相应API实现多媒体应用音视频播放:MediaPlayer、JetPlayer音视频录制:MediaRecorder媒体文件来源:应用程序资源、本地文件、网络文件流,实例:ImageView,实例:GridView、Gallery,详见实例:Test_of_Widget,实例:Test_of_Mp3Player,实现MediaPlayer.OnCompletionListener接口,publicclassMp3Player_TestextendsActivityimplementsMediaPlayer.OnCompletionListener/重写onCompletion()方法,实现循环播放publicvoidonCompletion(MediaPlayermp)if(flag1=1)ib4play();if(flag2=1)ib8play();/重写onDestroy()方法publicvoidonDestroy()super.onDestroy();if(imageButton2.isEnabled()ib2stop();if(imageButton6.isEnabled()ib6stop();,定义MediaPlayer对象并初始化,privateMediaPlayermp1,mp2;privatevoidmp1init()trymp1=MediaPlayer.create(this,R.raw.temp);mp1.setOnCompletionListener(this);catch(Throwablet)errorReport(t);privatevoidmp2init()trymp2=newMediaPlayer();Stringpath=/sdcard/graduated.mp3;mp2.setDataSource(path);mp2.prepare();mp2.setOnCompletionListener(this);catch(Throwablet)errorReport(t);,音乐文件路径:,定义三个ImageButton对象并实例化,实现paly、pause方法,privatevoidib4play()flag1=1;mediaPlayer1.start();imageButton2.setEnabled(true);imageButton3.setEnabled(true);imageButton4.setEnabled(false);privatevoidib3pause()flag1=0;mediaPlayer1.pause();imageButton2.setEnabled(false);imageButton3.setEnabled(false);imageButton4.setEnabled(true);,实现stop方法,privatevoidib2stop()flag1=0;mediaPlayer1.stop();imageButton2.setEnabled(false);imageButton3.setEnabled(false);trymediaPlayer1.prepare();mediaPlayer1.seekTo(0);imageButton4.setEnabled(true);catch(Throwablet)errorReport(t);,运行结果:,AndroidAVD、SDCard,创建AVD:AndroidSDKandAVDManagerAVD的存放位置:C:DocumentsandSettingsAdministrator.androidavdAVDSDCard及其容量的设定AVD的默认Skin与Target版本有关AVD的硬件参数设定:newDeviceramsize:512MSDK_2.1_Update1_API_7.avdconfig.ini,SDCard文件操作,先选定设备(Device)然后打开FileExplorer:另有:adb命令方式,8、应用实例:a、b、c、d,onandroid,Android应用开发,a:Xeyeb:蓝牙短信收发c:兰大新闻网d:黑白棋游戏,thanks,
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!