00:00
好,上一讲呢,我们把这个发送好友邀请啊,这个功能已经做了啊,那既然有发送方,那就一定有接收方啊,那么来先看看一下啊,上节课我们做的事情啊,上节课呢是这样啊,来到这个添加联系人页面,然后呢,我们输入701啊点击查找啊点击查找之后呢,点击添加按钮啊,点击添加按钮,注意注意右侧这个啊,一点击添加右侧呢这面啊,就比如说这个是A,这个B呢啊,他就搜到了这个好友邀请啊,就会在这面显示一个红点啊然后呢,我们再点击这个里面就会来到啊这个邀请信息列表界面,这里面呢就会显示啊是谁发送过来的啊好友邀请啊,比如说是这边是002啊,我这边呢是001,他就收到了一好友邀请啊,我这边呢,可以点击接收和拒绝啊。啊,整体的框架是这样的,这边是A,中间呢是一个环信的服务器啊这个A呢,一发送这个好友邀请啊,就会提交到这个环信服务器,环线服务器呢,就会把这个邀请信息推送给啊这个B。
01:08
啊,推送给了B,这个B呢,是接收还是拒绝啊,那由B来决定啊,所以说呢,你A发生了啊,好友邀请,你俩不一定就能成为好友啊,比如说你你看到哪个妹妹漂亮了,你说我这个加为好友吧,啊人家不一定搭理你呢,对吧,是这个意思,那接下来我们再要做,在做这个接收这个过程中啊,要先做一些准备工作啊做哪些准备工作呢?啊要建两张啊表啊两张什么表呢?一个是联系人的表。一个是联系人的。啊,一个是要信息的。啊,这么两张表啊,为什么要建这两张表呢?啊,比如说这个是A用户啊,啊完了。啊,再来一遍,这边是联系人啊,下面呢,这个是要你信息的啊这张表,然后呢,这边是A用户,这边是B用户啊这个A呀,他是不是有好多连线呢。
02:15
啊,他可能有这个联系人是这个。B啊,还有可能是C啊,还有D啊,还有这个啊,比如说美女啊,说好多人都是他的联系人呢,哎,那么这么多联系人是不是就需要有一张表啊,哎,就需要有一张表来存储,就放到这个联系人这里面啊,同时他还有一个,还有一张表,什么表呢?哎,他给谁发送了好友邀请啊,或者说谁同意了他的邀请啊,还有呢,别人接受了谁的邀请,这些等等这些信息,我都可以把这些邀请信息存放到这个啊,邀请信息的这张表。这样呢,就需要这么两张表啊,我们来统一管理,那有同学说了,你为什么这两张表不放到这个用户账号这张数据库里啊,我们同时在那个登录的时候,大家还记得吗?是不是有一张。
03:07
嗯,联系账号的表我看。啊,我看到这张表,为什么没有把这个这些联系人和这个申请信息的表要放在这个account里呢?啊是这样的,比如说你这个手机啊,他是不是有可能是这个A用户来登录啊,啊还有可能是这个C用户也也在这个手机上登录啊,啊有多少个人,那么是不是每个人都对应着这么两张表啊。每个人都这两个表重新画下,比如说这个是用户在你手机上登录了,那么他对应的两张表,一个是联系人的啊,一个是这个申请信息的。啊,同时我有可能这个B手机也在你这个手机上登录,那么他是不是也对这两张表啊,哎,但是这两张表是不是完全不同的,因为A的联系人和B的联系人是完全不一样的啊,有可能还要来个C啊等等等等一堆啊。
04:06
所以说呢,这样尽量他俩隔离开啊,A用户对应的一张表,B用户建一个表啊,而且这个表呢,表明都是根据这个啊用户的名称去建立的,那好啊,说这么多,接下来呢,我们开始啊建表啊,建表之前啊,我们先建一个群主数据的B类啊,为什么这么说呢?因为这个邀请信息啊,哎,它既包括这个联系人的信息,也包括群主的信息啊,所以呢,我们要先建一个群主的B类。然后这代码中啊,找到这个模型层中的B,在这里面建一个group in啊,那么这group ino应该包含哪些信息呢?大家想想,嗯,首先应该包含的就是group name群名称,接下来还应该包括哪些信息呢?包括这个group group ID。
05:06
就是群ID,群ID。那接下来还应该包含一个信息啊,包含什么信息呢。啊,大家想想啊,它应该包括什么信息呢。还应该包含的是这个邀请人啊,邀请人invite in v啊,Invite person,谁想进入这个群啊,要有一个邀请啊,邀请人谁邀请的?你好,生成一下它的构造,Out shift加S。再来一个空山构造。然后呢,生成它的get set方法。下面呢,来一个图示。
06:03
好,这个群信息的B类啊,我们就装完了群信息的B类。那这个B类是做完之后啊,接下来呢,我们就开始写这个邀请信息的啊B类啊,这个邀请信息呢,既包含这个群的,也包含连线的,因为。In va,因为in这里面首先啊,要包含这个联系人的,那就是U1份啊U然后呢,又包括这个群的。各一份啊。那有同学啊,可能会有疑问啊,说你这个是这不是用户账号了吗?啊,那大家想每一个联系人是不是也是一个用户账号啊,这个账号里包含的信息是不是跟这个联系人的信息都是一样的啊,比如说你联系人是不是也有用户名称完新ID,用户昵称和头像啊,哎,所以说啊,这俩是一样的,我们就用了这一个啊这个B类。
07:15
啊,再往下还应该包含哪些信息呢?嗯,包含的是邀请原因啊,邀请原因接下来还差一个啊,包含的是邀请的状态invitation。状态。这个状态啊,它是一个枚举啊,我们这里呢。定义了一个枚举在哪呢,在这。这里面的状态啊,很多啊。大家不用去实记啊,得是理解的去记就OK了啊,这个呢给它啊换一下vit。
08:03
啊,这里面我先把这个备注一下。联系人的这个是群的。这个呢是邀请原因,为啥要邀请我,那接下来呢,这个是邀请的状态。啊,邀请的状态,这个属于邀请清晰的B类。啊,壁垒,接下来我们看一下这个状态啊,这里有有哪些状态呢?啊,好多啊好多啊,但是大家不要怕啊,其实很简单,上面看一下上面这三个状态啊,分别是新的邀请,接受邀请和邀请被接受啊这个是关于联系人的,只有三个状态,下面呢,这些都是群的啊,我们讲到群的时候再说,我们先把这三个状态给大家讲解一下。
09:20
嗯,这个是A用户啊,发送邀请方这个呢是环新服务器,嗯,比如说这个A用户要给这个B用户发送好友邀请啊,他先发给环境服务器,环境服务器呢,再把这个邀请信息推送给这个B。啊,那这个这个B,嗯,他收到了一个邀请,那这个状态就叫新的邀请啊,那么这个B。啊,如果点击了接受啊,点击这个接收按钮,那么它就变成了接受的这个状态,它这个是这边状态,然后呢,他再把这接收状态返回来,返回给这个A啊,A又收到了,说B同意了你的邀请,那么这个A这个状态就变成了邀请被接受啊这么三个状态啊,大家要理解一下。
10:08
好,接下来呢,我们来生成一下它的构造。2SHIFT加S。再来一个无餐的啊,再来一个有餐的。然后呢,为了方便打印,再来一个凸视镜。啊,这样呢,啊,这个B类我们就创建完了,创建完之后呢,我们就开始来创建这个邀请信息啊和联系人信息的数据库啊在哪里创建呢?在这里创建一个。嗯,就叫DB helper。既然是数据库,那要继承谁呢?CI open help啊,Out加回车生成啊,两个方法,然后out加回车生成它的构造。
11:01
这里面呢,这个构造啊,啊,这个名称就要留着了啊,为啥呢,这个名称要根据你当前用户的账号去创建啊,动态创建。啊名称,然后呢,这里面呢,要创建两张表,建什么表呢?创建联系人的表,还要创建一个什么表呢?创建邀请信息的表,啊创建这么两张表。我们首先来见的就是这个联系人的表啊,那就是deb点执行CIRC的这个语句,那这个语句呢,我们还是不在这里写啊,我们还是单独啊建一张表啊,在这里面建一个表右键。有一个啊,Table建表语句啊。怎么写呢啊,Public static final啊,使这table name。
12:08
啊,表的名称啊,我们这里的表叫什么呢?叫联系人啊contest啊,前面加个table吧,Table表的名字叫这个,那么这张表里应该存放哪些信息呢?啊,既然是联系人的这张表啊,那存的肯定是联系人的信息。联系人表的建表。表语。哎,我这里至少要包含的是联系人里所有相关的啊,这些信息我都要存到这个数据库里啊,包括这个名称完ID昵称和头像啊,你先写一下。Public final,使君。
13:02
啊,首先第一个啊,第一个列是这个环形ID啊,然后来一个环ID。接下来CTRL加下啊,快速的生成这个变成name。里面的来一个name。这个呢,啊变成什么呢,昵称。接下来是头像。啊。这样还没有完啊,还没有完,还一个什么字段呢?嗯,大家想想能不能猜到啊,还有一个字段是他是否是联系人。啊,有同学该有疑问了,怎么这我这个纯的都是联系人的列表,怎么还能有是否是联系人呢?什么情况下会有这用这个呢?知道呢,大家用过微信吧,用过微信都这个建过群是吧?但是大家想一想,这个群里的人一定都是你的好友吗?
14:15
啊,想想。是不是你这个群里不一定都是你的好友啊,比如说这个A这个群,这个群里有一部分人可能是你的好友啊,是不是还有一部分人不是你的好友啊,啊,这部分人有可能是你的好友加进来的朋友,对吧?啊,比如说这个BB这部分是你的好友,C这部分有可能不是你的好友,那么这个C这部分,这个这些人的信息是不是你也能在这个群里能看到啊,那么这些信息是不是也需要保存呢?哎,这些信息也需要保存,比如说头像名称啊,也需要你去保存,但是呢,他不是你的好友,所以说就是这个纯的联系人的时候,加了这么一个字段啊,是否是联系人。
15:01
接下来处理一下这个建表语句public static final实际。Create。C啊,Create table table,那么来写一下这个建造语句啊,Create c啊,Table空格啊,一定要有空格加号,哪个名字啊,表明table name加上括号,然后第一列号。环线ID啊,拿它作为主键。Test。Primary primary primary组件,接下来呢,是这个car name test。
16:00
加啊。号是昵称啊,然后是test。加号号号什么呢。放图像。这是这些啊,基本的字段,接下来还有一个啊,就是这个联系人是否是联系人。啊,那这个字段啊,我用什么来存呢?啊,我用in t in啊in t格用整形来存啊零表示不是好友,一表示呢是联系人。啊,这么来区分这个地方要稍微注意一下,那接下来呢,把这个界面语句啊拿到证明。点create tap啊,这样呢,这个建表语句啊,就做完了联系人的。
我来说两句