需求分析

在2年前就学过安卓开发,那时候安卓开发还是很火,但是感觉现在不怎么热潮了,这学期刚好有门c++课,实现通讯录备份,网络通信使用socket通信,服务器端用c++,客户端用c++,界面用 android编写。

详细需求为:

使用android开发一款手机通讯录APP,界面用java编写,需要实现将通讯录备份到TF卡及服务器,通信处使用C++实现。

UML设计

1.总体设计

  • android数据读取

  • 数据TF备份

  • 数据通过JNI传输

  • C++实现客户端编写接受jin传送数据及发送数据

  • C++实现服务器接受客户端及数据存储

  • 拨打电话功能

2.数据协议传输

客户端与服务器端协议传输!

3.UML类图

该项目总共4个类,具体类描述如上注释所示!

4.UML时序图

用时序图来描述项目的生存周期动态状态!

运行展示

1.备份远程

左图是服务器,备份到远端sqlite数据库,右图是运行展示!

2.备份本地

备份到TF卡!

核心代码

1.通讯录获取

使用ContentResolver来实现通讯录数据的获取!

2.存储TF卡

3.客户端

客户端通过jni发送数据

4.服务器端

服务器端接收数据

让我们打开手机,

一起踏上手机通讯录备份吧!

- - - End - - -

玩转通讯录备份(JNI实战)相关推荐

  1. 【直播资料下载】Python 系列直播——深入Python与日志服务,玩转大规模数据分析处理实战第二讲...

    流畅的Python数据处理及大数据处理ETL Python 系列直播--深入Python与日志服务,玩转大规模数据分析处理实战 直播讲师:丁来强(成喆)--阿里高级技术专家,从事阿里云日志服务相关的产 ...

  2. SQL Server 大数据搬迁之文件组备份还原实战

    SQL Server 大数据搬迁之文件组备份还原实战 原文:SQL Server 大数据搬迁之文件组备份还原实战 一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景( ...

  3. 刘子佼 mysql 下载_MySQL数据管理之备份恢复案例解析 23讲 Mysql备份恢复实战 视频教程...

    课程名称:MySQL数据管理之备份恢复案例解析 23讲 Mysql备份恢复实战课程简介: 课程独家解析MySQL 5.6最新特性,课程讲师刘子佼讲课风格幽默,善于与人沟通,善于组建和协调团队攻克技术难 ...

  4. android通讯录备份恢复代码逻辑

    android通讯录备份恢复 新增和修改 目前用的是新增,云端判断返回的手机号是否为空 /*** 向手机中录入联系人信息** @param contactListBean 要录入的联系人信息*/pub ...

  5. 手机通讯录备份代码实现三

    前言 手机通讯录备份代码实现一和二的思路是通过 备份: while循环找到contact_id然后根据id找对应联系人所有电话和邮箱. 还原: 获取联系人列表通过for循环,一个一个插入手机通讯录 这 ...

  6. 手机通讯录备份代码实现二

    手机通讯录备份代码实现二 package app.utils;import java.util.ArrayList; import java.util.List;import android.cont ...

  7. 手机通讯录备份代码实现一

    手机通讯录备份代码实现一 import java.io.BufferedReader; import java.io.FileInputStream; import java.io.FileNotFo ...

  8. iOS 通讯录备份、恢复

            和相册 备份一样,公司产品备份功能有通讯录备份 功能,自然也有通讯录恢复了.iOS通讯录相关操作,iOS对通讯录的操作离不开的框架: #import <AddressBook/A ...

  9. android ios 微信 备份通讯录备份通讯录备份通讯录,苹果手机怎么备份通讯录?手机通讯录微信联系人备份教程...

    苹果手机怎么备份通讯录?手机通讯录微信联系人备份教程.通话功能是手机的最基本项,使用手机打电话,首先我们要有对方的号码,所以每个人的手机通讯录里都存有大量的联系人号码.为保证手机的通讯录不会丢失,我们 ...

最新文章

  1. python对象属性查看
  2. CUD学习-查看电脑block数量与如何分配给程序
  3. USTC English Club Note20171021
  4. linux只读挂载,读写挂载
  5. 绘制半圆_Android Canvas 绘制小黄人
  6. CYQ.Data 数据框架 发放V1.5版本源码
  7. 弃医从码 | 从肄业少年到失业青年,再到科技工程师的逆袭人生路
  8. 云图说|华为HiLens云上管理平台 花样管理多种端侧设备
  9. 与mysql数据库的交互实战_基于 Go 语言开发在线论坛(二):通过模型类与MySQL数据库交互...
  10. 第六次作业-----抽奖系统
  11. Python sys.argv[]详解
  12. json_extract提取复杂json_Python中高效使用JSON的四个小窍门
  13. 考研报考人数的灰色模型
  14. L1-087 机工士姆斯塔迪奥(Python3)
  15. 应用之星推出“图文app”制作工具,并附上教程
  16. 网页连接服务器失败是怎么回事,网页怎么连接服务器失败是怎么回事
  17. python画皮卡丘
  18. JavaEE企业级实战项目 智牛股第四天 NACOS、ceph集群和Netty
  19. WIN8/10 中科院 ARP系统显示和附件上传的解决办法
  20. C++基础——IO库基础

热门文章

  1. 港科大教授权龙:三维视觉重新定义人工智能安防...
  2. 5分钟让你在大火的多模态领域权威榜单VQA上超越人类
  3. Excel不够用?Smartbi的Excel融合分析带你飞
  4. 基于笔画特征的文字检测探讨
  5. Word常用定义的变量
  6. Android项目:手机安全卫士(14)—— 短信备份
  7. 游戏制作人是怎样炼成?
  8. HEIF图片存储格式探秘
  9. web前端开发常用又好用的几个软件
  10. Spring框架:谈谈对IOC和AOP的理解