`
bd2007
  • 浏览: 385677 次
  • 性别: Icon_minigender_2
  • 来自: 上海
社区版块
存档分类
最新评论
阅读更多

    <span style="font-family: Arial; font-size: 14px; line-height: 26px;"></span>

最近想写段android程序玩玩。

<br>

开发环境 eclipse ,android2.2

开发环境搭建

1.先安装jdk

2.下载安装eclipse

3.下载安装android sdk

4.安装eclipse插件 adt

5.配置Window > Preferences 中的android sdk路径

6.创建AVD

<br>



实现方法很简单<br style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px;">
1.把通讯录中的联系人,电话号码保存到txt文件中完成备份。<br style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px;">
2.读取txt文件,导入到通讯录完成还原。<br>



具体代码<br style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px;">
1.添加 通讯录读写权限,存储卡写权限

<uses-permission android:name="android.permission.READ_CONTACTS"></uses-permission><br>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission><br>
<uses-permission android:name="android.permission.WRITE_CONTACTS"></uses-permission><br>

2.写文件代码

   <span style="white-space: pre;"> </span>File saveFile=new File("/sdcard/test.txt");<br>
        FileOutputStream outStream;<br><span style="white-space: pre;"></span>try {<br><span style="white-space: pre;"></span>outStream = new FileOutputStream(saveFile);<br><span style="white-space: pre;"></span>   outStream.write(str.getBytes());<br><span style="white-space: pre;"></span>   outStream.close();<br><span style="white-space: pre;"></span>} catch (Exception e) {<br><br><br><span style="white-space: pre;"></span>setTitle(e.toString());<br><span style="white-space: pre;"></span>}<br>



3.取通讯录联系人

<span style="white-space: pre;"> </span>str="";<br>
   Cursor cur = getContentResolver().query(ContactsContract.Contacts.CONTENT_URI, null, null, null, null); <br>
   if (cur.moveToFirst()) { <br>
     int idColumn = cur.getColumnIndex(ContactsContract.Contacts._ID); <br>
     int displayNameColumn = cur.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME); <br>
     do { <br>
       String contactId = cur.getString(idColumn); <br>
       String disPlayName = cur.getString(displayNameColumn); <br>
       str+=disPlayName;<br>
       int phoneCount = cur.getInt(cur.getColumnIndex(ContactsContract.Contacts.HAS_PHONE_NUMBER)); <br>
       if(phoneCount>0){ <br>
         Cursor phones = getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI,null,ContactsContract.CommonDataKinds.Phone.CONTACT_ID+ " = " + contactId, null, null);<br>
         int i=0;<br>
         String phoneNumber;<br>
         if(phones.moveToFirst()){ <br>
           do{ <br><span style="white-space: pre;"> </span>i++;<br>
             phoneNumber= phones.getString(phones.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));<br>
             if(i==1)<br>
             str=str+","+phoneNumber;<br>
             System.out.println(phoneNumber); <br>
           }while(phones.moveToNext()); <br>
         } <br>
       } <br>
       str+="\r\n";<br>
       } while (cur.moveToNext()); <br>
   } <br>
   }
<br>
4.读文件代码

   <span style="white-space: pre;"> </span>try {<br><span style="white-space: pre;"></span>File file = new File("/sdcard/test.txt");<br><span style="white-space: pre;"></span>FileInputStream inStream = new FileInputStream(file);<br><span style="white-space: pre;"></span> ByteArrayOutputStream outStream = new ByteArrayOutputStream();<br><span style="white-space: pre;"></span> byte[] buffer = new byte[1024*5];<br><span style="white-space: pre;"></span> int length = -1;<br><span style="white-space: pre;"></span> while((length = inStream.read(buffer)) != -1 ){<br><span style="white-space: pre;"></span> outStream.write(buffer, 0, length);<br><span style="white-space: pre;"></span> }<br><span style="white-space: pre;"></span> outStream.close();<br><span style="white-space: pre;"></span> inStream.close();<br><span style="white-space: pre;"></span> String txt= outStream.toString();<br>

<span style="white-space: pre;"> </span>} catch (IOException e){<br><span style="white-space: pre;"></span>  setTitle(e.toString());<br><span style="white-space: pre;"></span>}

<br>

5.写通讯录

<span style="white-space: pre;"> </span>ContentValues values = new ContentValues();<br><span style="white-space: pre;"></span>Uri rawContactUri = getContentResolver().insert(RawContacts.CONTENT_URI, values);<br><span style="white-space: pre;"></span>long rawContactId = ContentUris.parseId(rawContactUri);<br><span style="white-space: pre;"></span>values.clear();<br><span style="white-space: pre;"></span>values.put(Data.RAW_CONTACT_ID, rawContactId);<br><span style="white-space: pre;"></span>values.put(Data.MIMETYPE, StructuredName.CONTENT_ITEM_TYPE);<br><span style="white-space: pre;"></span>values.put(StructuredName.GIVEN_NAME, name);<br><span style="white-space: pre;"></span>getContentResolver().insert(Data.CONTENT_URI, values);<br><span style="white-space: pre;"> </span>values.clear();<br><span style="white-space: pre;"></span>values.put(Data.RAW_CONTACT_ID, rawContactId);<br><span style="white-space: pre;"></span>values.put(Data.MIMETYPE, Phone.CONTENT_ITEM_TYPE);<br><span style="white-space: pre;"></span>values.put(Phone.NUMBER, num);<br><span style="white-space: pre;"></span>values.put(Phone.TYPE, Phone.TYPE_HOME);<br><span style="white-space: pre;"></span>getContentResolver().insert(Data.CONTENT_URI, values);<br>

<br>

<br>

<br>

<br>

<br>

<br>

如果你发现有什么不合理的,需要改进的地方,或者你有什么更好的实现方法<span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-family: 'lucida Grande',Verdana; font-size: 14px; line-height: 23px;">邮件联系328452421@qq.com(qq常年不在线,邮件联系)</span><a href="mailto:328452421@qq.com" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; color: rgb(255,153,0); text-decoration: none;"></a>朱晓
。相互交流 谢谢



源码下载地址http://download.csdn.net/detail/xiaoxiao108/3741045
 
0
0
分享到:
评论

相关推荐

    android手机通讯录备份还原

    android手机通讯录备份还原

    Android代码-通讯录备份还原.rar

    通讯录备份还原.rar

    android通讯录备份与还原

    实现简单android通讯录备份与还原,网上这方面的资料很少,贴出来分享给有需要的朋友,支持2.0以上版本

    android通讯录Excel备份还原

    通讯录备份软件是为了方便Android手机用户而开发的一款通讯录导入导出的手机应用程序,通过它可以方便的将手机通讯录导出成Excel表,和将规定格式的Excel表导入到手机通讯录。

    Android高级应用源码-通讯录+备份还原.zip

    Android高级应用源码-通讯录+备份还原.zip

    通讯录备份还原

    为android手机的通讯录提供的备份还原功能,源码可直接编译。

    基于android手机通讯录的设计与实现的毕业论文

    - 实现通讯录数据的备份和恢复功能,以便在需要时可以轻松地还原数据。 - 提供联系人信息的分类和分组功能,方便用户根据自己的需求进行管理和查找。 - 集成社交网络功能,使用户可以将通讯录中的联系人信息与社交...

    安卓课程设计-手机通讯录系统全解.doc

    基本功能需求 能要求:实现通信录的在线备份还原功能,能把系统的通信录一键导入导出。 实现要求:客户端基于Android平台实现,服务端技术自定 用例场景:小明丢了手机,只好去抢购了一个小米同时把手机卡补办回来...

    andorid通讯录,基础练手app

    andorid通讯录,基础练手app。 包括: 1.Android中的布局管理及资源文件的使用 2.Android中的ListView及ExpandableListView高级...13.通讯录的备份与还原 买教学视频花了好多大洋的……做好了代码分享跟大家学习下吧~

    玩转手机 提取通讯录

    能向导 轻松连接 可通过USB数据线和Wi-Fi与PC连接,支持多款Android手机...一键备份/还原短信、联系人等手机信息,不再担心数据丢失。管理手机 高效放心 手机数据,轻松管理;密码启动,保护隐私;手机截屏,轻松共享。

    小蔡手机通讯录

    基于Android4.4开发的一个手机通讯录,具有添加联系人,查看联系人,管理编辑联系人,智能查找联系人,删除及批量删除,备份/还原数据,以及手机联系人导入等功能,界面简洁美观,欢迎下载使用。

    ContactBackupStudy.zip

    android 通讯录备份和还原,经过测试调试可行,500多条数据备份只要2秒钟,网上的代码大多要15秒到24秒.通讯录还原在10s内

    通讯录-客户端&服务器

    这是本人的一个安卓课程设计--通讯录,主用功能有:联系人分组管理、联系人管理、个人中心模块、通讯录本地备份还原,以及云备份云还原。内含服务器和客户端源码。有需要的可以下载看看。

    XC手机通讯录

    基于Android4.4开发的一个手机通讯录,具有添加联系人,查看联系人,管理编辑联系人,智能查找联系人,删除及批量删除,备份/还原数据,以及手机联系人导入等功能,界面简洁美观,欢迎下载使用。

    GO备份_v3.51

    软件语言:中文软件类别:备份还原 软件大小:3.72 MB适用固件:1.6及更高固件 内置广告:有广告 适用平台:Android 软件介绍 GO备份是GO开发团队开发的一款备份工具应用,简洁的界面,强大的功能,保证您的数据...

    超级备份 Super Backup Pro 2.2.80 中文多语免费版.zip

    Android 上最快的数据备份工具!您可以将应用程序和联系人,短信和通话记录,书签和日历备份到 SD 卡/Gmail。您再也不会丢失数据!这是超级备份的免费无广告版本,如果您需要经常对手机系统中的重要数据进行备份,您...

Global site tag (gtag.js) - Google Analytics