版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
課程名稱:智能手機(jī)軟件開(kāi)發(fā)題目:基于Android的手機(jī)通訊錄的設(shè)計(jì)與實(shí)現(xiàn)專業(yè)信息工程系班級(jí)學(xué)號(hào)姓名成績(jī)指導(dǎo)教師智能手機(jī)軟件開(kāi)發(fā)大作業(yè)根據(jù)所學(xué)的Android手機(jī)開(kāi)發(fā)的知識(shí),采用Eclipse、JAVA開(kāi)發(fā)一個(gè)基于Android平臺(tái)的手機(jī)通訊錄軟件,具體要求如下:1.要發(fā)該軟件能夠在Android4.0以上的平臺(tái)上運(yùn)行。2.要求軟件界面美觀,操作方便,符合日常使用規(guī)范。3.能夠通過(guò)該手機(jī)通訊錄來(lái)添加新的聯(lián)系人,用來(lái)存放聯(lián)系人的姓名、單位、電話、QQ、地址等信息。4.能夠通過(guò)該手機(jī)通訊錄來(lái)編輯聯(lián)系人信息,來(lái)修改聯(lián)系人的個(gè)人信息。5.能夠通過(guò)該手機(jī)通訊錄來(lái)調(diào)用系統(tǒng)的通信接口,直接給用戶發(fā)短信,打電話。6.在手機(jī)通訊錄中,添加合適的菜單,來(lái)操作手機(jī)通訊錄。7.將開(kāi)發(fā)的過(guò)程寫成報(bào)告,要求內(nèi)容完整,格式規(guī)范,條理清晰。1設(shè)計(jì)目的 隨著手機(jī)通訊錄功能的不斷加強(qiáng)與完善,手機(jī)通訊錄對(duì)于人們的意義,已不僅僅像記事簿一樣顯示通訊地址,而是向著個(gè)性化、人性化的方向發(fā)展移動(dòng)終端的應(yīng)用軟件和需要的服務(wù)將會(huì)有很大的發(fā)展空間。根據(jù)這個(gè)特點(diǎn),設(shè)計(jì)一個(gè)基于Android平臺(tái)的通訊錄系統(tǒng),能根據(jù)手機(jī)的特點(diǎn),存儲(chǔ),管理,修改聯(lián)系人信息,并且能夠根據(jù)選定的聯(lián)系人,對(duì)其撥打電話,發(fā)送短信等。手機(jī)通訊錄作為手機(jī)的基本功能之一,每天我們都在頻繁地使用著。根據(jù)手機(jī)功能使用調(diào)查顯示,通訊錄從無(wú)到有,從英文到中文,經(jīng)過(guò)了十幾年的發(fā)展歷程,今后的發(fā)展趨勢(shì)就是從通訊錄發(fā)展為名片夾,也就是在一個(gè)人名下,可以存儲(chǔ)座機(jī)、手機(jī)、單位、地址、電子郵件等內(nèi)容。所以手機(jī)通訊錄功能越來(lái)越齊全,滿足了人們的需求。2開(kāi)發(fā)環(huán)境由于該android通訊錄是一個(gè)基于Java語(yǔ)言開(kāi)發(fā)軟件,所以選擇了Eclipse3.4作為開(kāi)發(fā)平臺(tái),作為插件,它能夠安裝AndroidSDK,從而可以安裝使用Android虛擬機(jī),使得程序得以開(kāi)發(fā),亦更為方便。本通訊錄系統(tǒng)就是在Eclipse3.4+Android平臺(tái)環(huán)境下編寫設(shè)計(jì)而成的。3需求分析該系統(tǒng)針對(duì)的主要用戶是Android手機(jī)用戶。Android手機(jī)通信管理系統(tǒng)包括以下主要內(nèi)容:(1)用戶通過(guò)聯(lián)系人功能可以保存聯(lián)系人的詳細(xì)信息,可以對(duì)聯(lián)系人進(jìn)行編輯、刪除、撥打電話、發(fā)送短信可以根據(jù)索引條件搜索聯(lián)系人。(2)用戶通過(guò)短信記錄功能可以發(fā)送短信,刪除短信記錄。(3)用戶通過(guò)SD卡所儲(chǔ)存信息向通訊錄批量導(dǎo)入聯(lián)系人信息。(4)用戶通過(guò)個(gè)人中心可以設(shè)置自己的詳細(xì)信息,這樣方便其他人了解自己,也可以將具有相同名字的聯(lián)系人合并。要設(shè)計(jì)一個(gè)良好的手機(jī)通訊錄,就必須首先明確該應(yīng)用環(huán)境對(duì)系統(tǒng)的要求。Android手機(jī)通訊錄應(yīng)用背景:方便用戶快捷通訊。(1)類似于傳統(tǒng)手機(jī)通訊錄的聯(lián)系人的添加、修改、查找、刪除功能。(2)指定聯(lián)系人后,錄音并發(fā)送給該聯(lián)系人的留言功能。(3)通過(guò)通訊錄訪問(wèn)聯(lián)系人的微博以實(shí)現(xiàn)與聯(lián)系人互動(dòng)的功能。(4)接收短信、電話、語(yǔ)音留言和微博留言的信息并提醒用戶。(5)保存用戶自身的個(gè)人信息以用于與他人聯(lián)系時(shí)顯示身份。4概要設(shè)計(jì) 下面數(shù)據(jù)流圖是對(duì)于Android手機(jī)通訊管理軟件主要功能模塊包括的簡(jiǎn)單結(jié)構(gòu)圖:聯(lián)系人查看、聯(lián)系人編輯、聯(lián)系人添加、聯(lián)系人刪除、呼叫、發(fā)送短信、搜索,如圖所示:Android手機(jī)通訊Android手機(jī)通訊通訊列表通訊列表搜索呼叫刪除添搜索呼叫刪除添加查看編輯發(fā)送短信圖4.1Android手機(jī)通訊管理軟件主要功能模塊聯(lián)系人列表界面主菜單中包括添加聯(lián)系人、搜索聯(lián)系人、關(guān)于及查看系統(tǒng)版本號(hào)、退出菜單項(xiàng)。點(diǎn)擊添加聯(lián)系人,則進(jìn)入聯(lián)系人添加界面,添加成功后返回列表界面。點(diǎn)擊搜索菜單,則進(jìn)入聯(lián)系人搜索界面,輸入聯(lián)系人的全名或一個(gè)字,即可查找相關(guān)聯(lián)系人,點(diǎn)擊聯(lián)系人會(huì)進(jìn)入聯(lián)系人查看界面,可以對(duì)聯(lián)系人進(jìn)行編輯、刪除、撥打電話、發(fā)送短信。如下圖所示的Android手機(jī)通訊管理軟件業(yè)務(wù)流程圖.開(kāi)始開(kāi)始選則功能編輯搜索發(fā)送短信撥打電話刪除新建更新數(shù)據(jù)庫(kù)選中條目輸入搜索條件結(jié)束輸入新建聯(lián)系人信息后保存顯示搜索結(jié)果圖4.2Android手機(jī)通訊管理軟件業(yè)務(wù)流程圖5數(shù)據(jù)庫(kù)設(shè)計(jì)5.1SQLite數(shù)據(jù)庫(kù)簡(jiǎn)介SQLite,是一款輕型的數(shù)據(jù)庫(kù),是遵守ACID的關(guān)聯(lián)式數(shù)據(jù)庫(kù)管理系統(tǒng),它的設(shè)計(jì)目標(biāo)是嵌入式的,而且目前已經(jīng)在很多嵌入式產(chǎn)品中使用了它,它占用資源非常的低,在嵌入式設(shè)備中,可能只需要幾百K的內(nèi)存就夠了。它能夠支持Windows/Linux/Unix等等主流的操作系統(tǒng),同時(shí)能夠跟很多程序語(yǔ)言相結(jié)合,比如Tcl、C#、PHP、Java等,還有ODBC接口,同樣比起Mysql、PostgreSQL這兩款開(kāi)源世界著名的數(shù)據(jù)庫(kù)管理系統(tǒng)來(lái)講,它的處理速度比他們都快。SQLite第一個(gè)Alpha版本誕生于2000年5月.至今已經(jīng)有10個(gè)年頭,SQLite也迎來(lái)了一個(gè)版本SQLite3已經(jīng)發(fā)布。本系統(tǒng)采用的是Android系統(tǒng)自帶的SQLite輕型數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù)。因此占用資源非常小。5.2數(shù)據(jù)庫(kù)表結(jié)構(gòu)首先創(chuàng)建數(shù)據(jù)庫(kù),在數(shù)據(jù)庫(kù)中創(chuàng)建表用來(lái)存儲(chǔ)聯(lián)系人數(shù)據(jù),其中包括聯(lián)系人姓名、手機(jī)號(hào)、QQ、地址等聯(lián)系方式。6詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)6.1聯(lián)系人瀏覽模塊6.1.1進(jìn)入首界面,顯示聯(lián)系人列表。點(diǎn)擊某個(gè)聯(lián)系人會(huì)進(jìn)入查看聯(lián)系人界面,可以查看聯(lián)系人的詳細(xì)信息,對(duì)聯(lián)系人進(jìn)行編輯、刪除、撥打電話發(fā)送短信等。截圖所示:圖6.1.1通訊錄聯(lián)系人列表模塊界面6.1.2點(diǎn)擊菜單按鈕時(shí),就會(huì)顯示添加、查找、關(guān)于和退出功能。如果點(diǎn)擊退出菜單,則會(huì)退出該軟件。如圖所示:圖6.1.2通訊錄主菜單項(xiàng)模塊6.1.3長(zhǎng)按菜單顯示Android手機(jī)通訊截圖如圖所示:圖6.1.3通訊錄聯(lián)系人界面菜單模塊6.2查看聯(lián)系人模塊6.2.1在聯(lián)系人界面點(diǎn)中擊某個(gè)聯(lián)系人,則會(huì)跳轉(zhuǎn)到該界面。該軟件實(shí)現(xiàn)了給聯(lián)系人撥打電話和發(fā)送短信的功能。查看聯(lián)系人界面截圖如圖所示:圖6.2手機(jī)通訊查看聯(lián)系人模塊界面6.3編輯聯(lián)系人模塊6.3.1聯(lián)系人編輯界面設(shè)置了返回列表菜單和刪除聯(lián)系人菜單。點(diǎn)擊返回列表菜單,會(huì)返回到聯(lián)系人瀏覽界面。編輯聯(lián)系人界面如圖所示:圖6.3手機(jī)通訊錄編輯聯(lián)系人界面模塊6.4查找聯(lián)系人模塊查找到所有包含該部分的聯(lián)系人,并在ListView中顯示出來(lái)所有的聯(lián)系人的姓名和手機(jī)號(hào)碼,截圖如圖所示:圖6.4通訊錄查找聯(lián)系人模塊界面7總結(jié)這學(xué)期的智能手機(jī)開(kāi)發(fā)課程的學(xué)習(xí),讓我了解到手機(jī)開(kāi)發(fā)端應(yīng)用的廣泛性,以及對(duì)自己所學(xué)知識(shí)的總結(jié),做手機(jī)通訊錄,讓我了解到手機(jī)已經(jīng)成為日常生活中不可分割的一部分,所以手機(jī)上的功能滿足人們的需求,才是手機(jī)通訊錄開(kāi)的重要性。對(duì)于這次的課程設(shè)計(jì),使我發(fā)現(xiàn)了自己所掌握的知識(shí)是真正如此的缺乏,自己綜合應(yīng)用所學(xué)的專業(yè)知識(shí)能力是如此的不足通過(guò)這次開(kāi)發(fā)項(xiàng)目,我們學(xué)會(huì)了如何在一個(gè)項(xiàng)目中集成多種技術(shù),如何合理的耦合各種小功能,如何解決各種開(kāi)發(fā)中出現(xiàn)的問(wèn)題。同時(shí)在這次開(kāi)發(fā)中出現(xiàn)的問(wèn)題也暴露出了我們對(duì)java程序設(shè)計(jì)的一些問(wèn)題,以及自己的動(dòng)手能力還需要提高,而且做一個(gè)項(xiàng)目首先要明白這個(gè)項(xiàng)目的中心思想,這樣才有目的去設(shè)計(jì)。通過(guò)課程設(shè)計(jì),使我深深體會(huì)到,干任何事都必須耐心,細(xì)致,課程設(shè)計(jì)過(guò)程中,許多迷惑有時(shí)不免令我感到有些心煩意亂,有幾次因?yàn)椴恍⌒亩鲥e(cuò),只能毫不情意地重來(lái)。但一想起老師對(duì)我們耐心的教導(dǎo),認(rèn)真對(duì)待的良好習(xí)慣.這次課程設(shè)計(jì)使我在工作作風(fēng)上得到了一次難得的磨練,一個(gè)人的性格很大程度上決定一件事情的進(jìn)展以及對(duì)工作的態(tài)度和生活的態(tài)度,所以養(yǎng)成好的習(xí)慣能夠幫助我克服各種苦難,能夠幫助我在今后的學(xué)習(xí)中腳踏實(shí)地的工作。通過(guò)這次手機(jī)開(kāi)發(fā)通訊錄課程設(shè)計(jì),我能夠更加深刻的了解到手機(jī)通訊錄開(kāi)發(fā)的前景以及所需的知識(shí),總之在今后的學(xué)習(xí)中自己應(yīng)該了解如今社會(huì)上開(kāi)發(fā)手機(jī)通訊錄所需的最新的技術(shù),不能一成不變,只看書本上的知識(shí),養(yǎng)成自我學(xué)習(xí)的良好習(xí)慣。8參考文獻(xiàn)[1]羅偉.基于Android平臺(tái)的即時(shí)通訊系統(tǒng)的研究與實(shí)現(xiàn)[D].湖南師范大學(xué),2009
.[2]李剛,《瘋狂Java講義》,電子工業(yè)出版社,2008[3]程峰,《JAVA核心技術(shù)》,機(jī)械工業(yè)出版社,2007[4]王鵬,《JAVA語(yǔ)言程序設(shè)計(jì)》,大連理工出版社,20059附錄源代碼publicclassDBHelper{/**操作數(shù)據(jù)庫(kù)和各個(gè)表*/publicstaticfinalStringDATABASE_NAME="CONTACT_DB";publicstaticfinalStringTABLE_CONTACTER="contact_person";publicstaticfinalStringTABLE_MOBLIEPHONE="phone_number";publicstaticfinalStringTABLE_GROUP="mygroup";publicstaticfinalStringTABLE_EMAIL="email";publicstaticfinalStringTABLE_QQ="qq";publicstaticfinalStringTABLE_HOMEPHONE="home_phone_number";publicstaticfinalStringTABLE_ADDRESS="address";publicstaticfinalStringTABLE_FAX="fax";//創(chuàng)建表的SQL語(yǔ)句publicstaticString[]CreateTabelSQL;privatestaticSQLiteDatabasedbInstance;publicstaticfinalintVERSION=4;privateMyDBHelpermyDBHelper;privateContextcontext;publicDBHelper(Contextcontext,String[]createtablesql){ this.context=context; this.CreateTabelSQL=createtablesql;}publicDBHelper(Contextcontext){ this.context=context;}/***打開(kāi)數(shù)據(jù)庫(kù)*/publicvoidopenDatabase(){ if(dbInstance==null) { //創(chuàng)建數(shù)據(jù)庫(kù) myDBHelper=newMyDBHelper(context,DATABASE_NAME,VERSION); dbInstance=myDBHelper.getWritableDatabase(); }}/** *返回所有聯(lián)系人*/publicArrayList<HashMap<String,Object>>getAllContacter(Stringcondition){ ArrayList<HashMap<String,Object>>contaclist=newArrayList(); Cursorcursor; if(condition==null||condition.trim().equals("")) cursor=dbInstance.query(TABLE_CONTACTER, newString[]{"id","name","headImage"},null,null,null,null,null); else{ StringBuffersqlBuffer=newStringBuffer(); sqlBuffer.append("selectid,name,headImagefrom") .append(TABLE_CONTACTER) .append("wherenamelike'%") .append(condition) .append("%'"); cursor=dbInstance.rawQuery(sqlBuffer.toString(),null); } cursor.moveToFirst(); while(!cursor.isAfterLast()) { HashMap<String,Object>item=newHashMap<String,Object>(); item.put("contacter_id",cursor.getInt(cursor.getColumnIndex("id"))); item.put("name",cursor.getString(cursor.getColumnIndex("name"))); item.put("headimage",cursor.getString(cursor.getColumnIndex("headImage"))); //返回第一個(gè)手機(jī)電話號(hào)碼 CursorphoneCursor=dbInstance.query(TABLE_MOBLIEPHONE, newString[]{"phone_number"},"id=?", newString[]{String.valueOf(cursor.getInt(cursor.getColumnIndex("id")))}, null,null,null); phoneCursor.moveToFirst(); item.put("phonenumber",phoneCursor.getString(phoneCursor.getColumnIndex("phone_number"))); contaclist.add(item); cursor.moveToNext(); } returncontaclist;}/***根據(jù)編號(hào)返回一個(gè)聯(lián)系人*/publicContactergetContacter(intid){ Contactercontacter=newContacter(); CursorcontacterCursor=dbInstance.query(TABLE_CONTACTER, newString[]{"id","group_name","name","nick_name","birthday","workingunits","headImage"}, "id=?", newString[]{String.valueOf(id)},null,null,null); contacter.id=id; contacterCursor.moveToFirst(); =contacterCursor.getString(contacterCursor.getColumnIndex("name")); contacter.nickname=contacterCursor.getString(contacterCursor.getColumnIndex("nick_name")); contacter.workingunits=contacterCursor.getString(contacterCursor.getColumnIndex("workingunits")); if(contacterCursor.getString(contacterCursor.getColumnIndex("birthday")).trim()!=null &&!contacterCursor.getString(contacterCursor.getColumnIndex("birthday")).trim().equals("")) { Stringstring=contacterCursor.getString(contacterCursor.getColumnIndex("birthday")).trim(); contacter.birthday=Date.valueOf(contacterCursor.getString(contacterCursor.getColumnIndex("birthday"))); } contacter.headimage=contacterCursor.getInt(contacterCursor.getColumnIndex("headImage")); //聯(lián)系人的手機(jī)號(hào)碼 CursorphoneCursor=dbInstance.query(TABLE_MOBLIEPHONE, newString[]{"phone_number"}, "id=?",newString[]{String.valueOf(id)},null,null,null); phoneCursor.moveToFirst(); contacter.mobilephone=newString[phoneCursor.getCount()]; for(inti=0;i<phoneCursor.getCount();i++) { contacter.mobilephone[i]=phoneCursor.getString(phoneCursor.getColumnIndex("phone_number")); phoneCursor.moveToNext(); } //聯(lián)系人的座機(jī)號(hào)碼 CursorhomephoneCursor=dbInstance.query(TABLE_HOMEPHONE, newString[]{"home_number"}, "id=?", newString[]{String.valueOf(id)},null,null,null); homephoneCursor.moveToFirst(); contacter.homephonenumber=newString[homephoneCursor.getCount()]; for(inti=0;i<homephoneCursor.getCount();i++) { contacter.homephonenumber[i]=homephoneCursor.getString(homephoneCursor.getColumnIndex("home_number")); homephoneCursor.moveToNext(); } //聯(lián)系人的email CursoremailCursor=dbInstance.query(TABLE_EMAIL, newString[]{"email"}, "id=?", newString[]{String.valueOf(id)},null,null,null); emailCursor.moveToFirst(); contacter.email=newString[emailCursor.getCount()]; for(inti=0;i<emailCursor.getCount();i++) { contacter.email[i]=emailCursor.getString(emailCursor.getColumnIndex("email")); emailCursor.moveToNext(); } //聯(lián)系人的傳真號(hào)碼 CursorfaxCursor=dbInstance.query(TABLE_FAX,newString[]{"fax_number"},"id=?",newString[]{String.valueOf(id)},null,null,null); contacter.faxnumber=newString[emailCursor.getCount()]; faxCursor.moveToFirst(); for(inti=0;i<faxCursor.getCount();i++) { contacter.faxnumber[i]=faxCursor.getString(faxCursor.getColumnIndex("fax_number")); faxCursor.moveToNext(); } //聯(lián)系人的地址 CursoraddressCursor=dbInstance.query(TABLE_ADDRESS, newString[]{"add_code","province","city","street","zip_code","country"}, "id=?", newString[]{String.valueOf(id)},null,null,null); addressCursor.moveToFirst();contacter.addresses=newaddress[addressCursor.getCount()];for(inti=0;i<addressCursor.getCount();i++){ contacter.addresses[i]=newaddress(); contacter.addresses[i].add_code=addressCursor.getInt(addressCursor.getColumnIndex("add_code")); contacter.addresses[i].province=addressCursor.getString(addressCursor.getColumnIndex("province")); contacter.addresses[i].city=addressCursor.getString(addressCursor.getColumnIndex("city")); contacter.addresses[i].street=addressCursor.getString(addressCursor.getColumnIndex("street")); contacter.addresses[i].zip_code=addressCursor.getString(addressCursor.getColumnIndex("zip_code")); contacter.addresses[i].coutry=addressCursor.getString(addressCursor.getColumnIndex("country")); addressCursor.moveToNext();} returncontacter;}/**自動(dòng)生成聯(lián)系人編碼*/publicintgenerateContacterID(){ Cursorcursor=dbInstance.query(TABLE_CONTACTER, newString[]{"id"},null,null,null,null,null); cursor.moveToFirst(); inti=0; if(cursor.getCount()==0) return0; while(!cursor.isAfterLast()) { if(i!=cursor.getInt(cursor.getColumnIndex("id"))) returni; i++; cursor.moveToNext(); } returni;}/***插入新的聯(lián)系人*/publicbooleaninsertContacter(Contactercontacter){ booleanflag; intid=generateContacterID(); //插入基本信息 flag=insertContactPerson(id,contacter.groupname, ,contacter.nickname,contacter.birthday, contacter.workingunits,contacter.headimage); //插入email if(contacter.email!=null&&contacter.email.length>0) for(Stringemail:contacter.email) flag&=insertEmail(id,email); //插入QQ if(contacter.email!=null&&contacter.QQ.length>0) for(longqq:contacter.QQ) flag&=insertQQ(id,qq); //插入傳真 if(contacter.faxnumber!=null&&contacter.faxnumber.length>0) for(Stringfax:contacter.faxnumber) flag&=insertFax(id,fax); //插入電話 if(contacter.mobilephone!=null&&contacter.mobilephone.length>0) for(Stringphone:contacter.mobilephone) flag&=insertPhoneNumber(id,phone); //插入座機(jī)號(hào)碼 if(contacter.homephonenumber!=null&&contacter.homephonenumber.length>0) for(Stringhomephone:contacter.homephonenumber) flag&=insertHomePhone(id,homephone); //插入地址 inti=0; if(contacter.addresses!=null&&contacter.addresses.length>0) for(addressadd:contacter.addresses) { flag&=insertAddress(id,i++,vince, add.city,add.street,add.zip_code,add.coutry); } returnflag;}/***更新聯(lián)系人*/publicvoidupdateContacter(Contactercontacter){ //先刪除記錄 removeContacter(String.valueOf(contacter.id)); //再重新插入 insertContacter(contacter);}/**刪除聯(lián)系人*/publicvoidremoveContacter(Stringid){ dbInstance.delete(TABLE_EMAIL,"id=?",newString[]{id}); dbInstance.delete(TABLE_FAX,"id=?",newString[]{id}); dbInstance.delete(TABLE_HOMEPHONE,"id=?",newString[]{id}); dbInstance.delete(TABLE_MOBLIEPHONE,"id=?",newString[]{id}); dbInstance.delete(TABLE_QQ,"id=?",newString[]{id}); dbInstance.delete(TABLE_CONTACTER,"id=?",newString[]{id});}//數(shù)據(jù)庫(kù)插入函數(shù)publicbooleaninsertValuesToTable(StringtableName,ContentValuesvalues){ if((long)dbInstance.insert(tableName,null,values)==-1) returnfalse; else { returntrue; }}/**往表中插入數(shù)據(jù)*///往group插入數(shù)據(jù)publicbooleaninsertGroup(Stringgroupname){ ContentValuesvalues=newContentValues();values.put("group_name",groupname);if(insertValuesToTable(TABLE_GROUP,values)) returntrue; elsereturnfalse;}//往ContactPerson表插入數(shù)據(jù)publicbooleaninsertContactPerson(intid, Stringgroupname, Stringname, Stringnickname, Datebirthday, Stringworkiingunits, intheadImage ){ ContentValuesvalues=newContentValues(); values.put("id",id); values.put("group_name",groupname); values.put("name",name); values.put("nick_name",nickname); values.put("birthday",birthday.toString()); values.put("workingunits",workiingunits); values.put("headImage",headImage); if(insertValuesToTable("contact_person",values)) returntrue; elsereturnfalse;}//往Email表插入數(shù)據(jù)publicbooleaninsertEmail(intid,Stringemail){ ContentValuesvalues=newContentValues(); values.put("id",id); values.put("email",email); if(insertValuesToTable("Email",values)) returntrue; else returnfalse;}//往address表插入數(shù)據(jù)publicbooleaninsertAddress(intid, intadd_code, Stringprovince, Stringcity, Stringstreet, Stringzip_code, Stringcountry){ ContentValuesvalues=newContentValues(); values.put("id",id); values.put("add_code",add_code); values.put("province",province); values.put("city",city); values.put("street",street); values.put("zip_code",zip_code); values.put("country",country); if(insertValuesToTable("address",values)) returntrue; else returnfalse;}//往QQ表插入數(shù)據(jù)publicbooleaninsertQQ(intid,longQQ_number){ ContentValuesvalues=newContentValues(); values.put("id",id); values.put("QQ_number",QQ_number); if(insertValuesToTable("QQ",values)) returntrue; else returnfalse;}//往fax表插入數(shù)據(jù)publicbooleaninsertFax(intid,Str
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 小學(xué)研學(xué)活動(dòng)方案6篇
- 工程造價(jià)咨詢服務(wù)合同范本9篇
- 學(xué)校矛盾糾紛排查工作情況匯報(bào)三篇
- 中國(guó)小動(dòng)物技能大賽骨科專賽理論考試題庫(kù)(含答案)
- 《反電信網(wǎng)絡(luò)詐騙法》知識(shí)考試題庫(kù)150題(含答案)
- 大拇指腱鞘炎偏方課件
- 2025年河北女子職業(yè)技術(shù)學(xué)院高職單招語(yǔ)文2018-2024歷年參考題庫(kù)頻考點(diǎn)含答案解析
- 2025年江西現(xiàn)代職業(yè)技術(shù)學(xué)院高職單招高職單招英語(yǔ)2016-2024歷年頻考點(diǎn)試題含答案解析
- 2025年江西冶金職業(yè)技術(shù)學(xué)院高職單招語(yǔ)文2018-2024歷年參考題庫(kù)頻考點(diǎn)含答案解析
- 2025年武漢職業(yè)技術(shù)學(xué)院高職單招職業(yè)技能測(cè)試近5年常考版參考題庫(kù)含答案解析
- 2025年度新能源汽車充電站運(yùn)營(yíng)權(quán)轉(zhuǎn)讓合同樣本4篇
- 第5課 隋唐時(shí)期的民族交往與交融 課件(23張) 2024-2025學(xué)年統(tǒng)編版七年級(jí)歷史下冊(cè)
- 2024年全國(guó)職業(yè)院校技能大賽高職組(生產(chǎn)事故應(yīng)急救援賽項(xiàng))考試題庫(kù)(含答案)
- 老年上消化道出血急診診療專家共識(shí)2024
- 廣東省廣州黃埔區(qū)2023-2024學(xué)年八年級(jí)上學(xué)期期末物理試卷(含答案)
- 學(xué)校安全工作計(jì)劃及行事歷
- 《GMP基礎(chǔ)知識(shí)培訓(xùn)》課件
- 數(shù)學(xué)家華羅庚課件
- 貴州茅臺(tái)酒股份有限公司招聘筆試題庫(kù)2024
- 《納米技術(shù)簡(jiǎn)介》課件
- 血液透析高鉀血癥的護(hù)理查房
評(píng)論
0/150
提交評(píng)論