【技术实现步骤摘要】
本申请涉及计算机
,更具体的说是涉及一种数字ID(Identification,身份标识)的生成方法及装置。
技术介绍
一般的软件项目开发过程中会创建很多对象,例如,模型、特效、角色、物品、技能等,每个对象一般都会有一个字符串名称,可以称为字符ID。但是,对象之间可能存在引用关系,或者,一些需要存储到服务器数据库中的对象,都需要一个唯一的标识来表示该对象,因为字符串的查找效率太低,而且,如果作为网络协议传递,字符串耗费流量太多,所以,需要为对象分配一个二进制的数字ID。随着软件项目开发技术的发展,需要多个人或项目组同时开发一个软件项目的情况越来越多。传统方式使用项目编辑器编辑软件项目中的对象并为这些对象分配数字ID。但是,当多个人或多个项目组同时开发一个项目时,不同的开发者或项目组分别利用本地的项目编辑器为本地创建的对象分配数字ID,不同终端上的项目编辑器无法保证所分配的ID是唯一的,因此,这种方式可能出现重复ID的现象,即同一项目中不同对象对应的ID相同,而项目中的对象ID重复将导致项目运营存在风险和隐患。
技术实现思路
有鉴于此,本申请提供一种数字ID生成方法及装置,以解决多个终端设备无法为同一项目中的不同对象分配唯一的数字ID的技术问题。为解决上述技术问题,本申请提供如下技术方案:本申请提供一种数字身份标识ID生成方法,应用于终端设备中,包括:从服务器中获取当前项目对应的数字ID分配信息,所述数字ID分配信息包括已经为所述当前项目中对象分配的最新数字ID;根据所述最新数字ID确定当前可分配数字ID,并分配给所述终端设备创建的待分配对象,以使每个所 ...
【技术保护点】
一种数字身份标识ID生成方法,应用于终端设备中,其特征在于,包括:从服务器中获取当前项目对应的数字ID分配信息,所述数字ID分配信息包括已经为所述当前项目中对象分配的最新数字ID;根据所述最新数字ID确定当前可分配数字ID,并分配给所述终端设备创建的待分配对象,以使每个所述待分配对象具有一个唯一的数字ID;将为所述待分配对象分配的数字ID信息发送给所述服务器,以使所述服务器根据所述数字ID信息更新所述数字ID分配信息,所述数字ID信息包括为所述待分配对象分配的最后一个数字ID,以使所述服务器将所述数字ID分配信息中的最新ID更新为所述最后一个数字ID;当接收到所述服务器返回的更新成功响应消息后,确定所述待分配对象的数字ID分配成功,所述更新成功响应消息由所述服务器根据所述数字ID信息成功更新所述数字ID分配信息后产生。
【技术特征摘要】
1.一种数字身份标识ID生成方法,应用于终端设备中,其特征在于,包括:从服务器中获取当前项目对应的数字ID分配信息,所述数字ID分配信息包括已经为所述当前项目中对象分配的最新数字ID;根据所述最新数字ID确定当前可分配数字ID,并分配给所述终端设备创建的待分配对象,以使每个所述待分配对象具有一个唯一的数字ID;将为所述待分配对象分配的数字ID信息发送给所述服务器,以使所述服务器根据所述数字ID信息更新所述数字ID分配信息,所述数字ID信息包括为所述待分配对象分配的最后一个数字ID,以使所述服务器将所述数字ID分配信息中的最新ID更新为所述最后一个数字ID;当接收到所述服务器返回的更新成功响应消息后,确定所述待分配对象的数字ID分配成功,所述更新成功响应消息由所述服务器根据所述数字ID信息成功更新所述数字ID分配信息后产生。2.根据权利要求1所述的方法,其特征在于,若所述服务器为版本控制系统SVN服务器,则所述从服务器中获取当前项目对应的数字ID分配信息,包括:从所述SVN服务器中获取所述当前项目对应的最新版本的ID文件,所述最新版本的ID文件中存储有所述当前项目对应的最新的数字ID分配信息,所述最新的数字ID分配信息包括所述最新数字ID;从所述最新版本的ID文件中读取所述当前项目对应的数字ID分配信息;所述将为所述待分配对象分配的数字ID信息发送给所述服务器,包括:根据所述数字ID信息写入所述最新版本的ID文件,得到修改后的ID文件;将所述修改后的ID文件发送给所述SVN服务器;所述修改后的ID文件用于使所述SVN服务器确定所述修改后的ID文件是基于所述SVN服务器内所述当前项目对应的当前最新版本的ID文件修改时,更新所述最新版本的ID文件。3.根据权利要求1或2所述的方法,其特征在于,所述根据所述最新数字ID,确定当前可分配数字ID,并分配给所述终端设备创建的待分配对象,以使每个所述待分配对象具有一个唯一的数字ID,包括:若当前待分配对象是第一个待分配的对象,则将所述最新数字ID自增预设步长后得到的数字ID分配给所述当前待分配对象;若所述当前待分配对象不是所述第一个待分配的对象,则将所述当前待分配对象的上一个待分配对象对应的数字ID增加所述预设步长后得到的数字ID分配给所述当前待分配对象,直到所述终端设备创建的待分配对象全部分配完。4.根据权利要求1或2所述的方法,其特征在于,所述根据所述最新数字ID,确定当前可分配数字ID,并分配给所述终端设备创建的待分配对象,以使每个所述待分配对象具有一个唯一的数字ID,包括:确定所述终端设备创建的待分配对象的目标数量;根据所述目标数量及所述最新数字ID,确定出待分配数字ID范围,所述待分配数字ID范围中的数字ID以预设步长依次递增,且第一个数字ID为所述最新ID以预设步长自增后的数字ID;将所述待分配数字ID范围内的数字ID逐个分配给各个所述待分配对象,以使每个所述待分配对象具有一个唯一的数字ID。5.根据权利要求1或2所述的方法,其特征在于,若所述数字ID分配信息中的最新数字ID包括每个对象类型所对应的最新数字ID,则所述根据所述最新数字ID,确定当前可分配数字ID,并分配给所述终端设备创建的待分配对象,以使每个所述待分配对象具有一个唯一的数字ID,包括:确定当前待分配对象的对象类型;若所述当前待分配对象是所述对象类型中第一个待分配的对象,则从所述数字ID分配信息中获取所述对象类型对应的最新数字ID,并将所述最新数字ID增加预设步长后得到的数字ID分配给所述当前待分配对象;若所述当前待分配对象不是所述对象类型中的第一个待分配的对象,则将所述对象类型中所述当前待分配对象的上一个待分配对象对应的数字ID增加预设步长后得到数字ID分配给所述当前待分配对象。6.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:当接收到所述服务器返回的更新失败响应消息后,返回重新执行所述从服务器中获取当前项目对应的数字ID分配信息的步骤,直到接收到所述服务器返回的更新成功响应消息。7.根据权利要求1或2所述的方法,其特征在于,所述数字ID为32位或64位二进制数。8.一种数字身份标识ID生成方法,应用于服务器中,其特征在于,所述版本管理服务器中存储有各个项目对应的数字ID分配信息,所述数字ID分配信息包括已经为所述各个项目分配的最新数字ID,所述方法包括:所述服务器向终端设备返回所述终端设备请求获得的当前项目所对应的数字ID分配信息,所述数字ID信息包括已经为所述当前项目分配的最新数字ID,以使所述终端设备根据所述最新数字ID确定当前可分配数字ID,并分配给所述终端设备创建的待分配对象,以使每个所述待分配对象具有一个唯一的数字ID;当接收到所述终端设备发送的数字ID信息后,所述服务器根据所述数字ID信息更新所述数字ID分配信息,所述数字ID信息包括所述终端设备为所述待分配对象分配的最后一个数字ID,以使所述服务器将所述项目对应的数字ID分配信息中的最新数字ID更新为所述最后一个数字ID;当所述服务器根据所述数字ID信息成功更新所述数字ID分配信息后,向所述终端设备返回更新成功响应消息,以使所述终端设备接收到所述更新成功响应消息后确定所述项目的数字ID分配成功。9.根据权利要求8所述的方法,其特征在于,若所述服务器为版本控制系统SVN服务器,则所述服务器向终端设备返回所述终端设备请求获得的当前项目所对应的数字ID分配信息,包括:所述SVN服务器向所述终端设备返回所述当前项目对应的最新版本的ID文件,所述最新版本的ID文件中包含所述当前项目对应的数字ID分配信息,以使所述终端设备从所述最新版本的ID文件中读取所述数字ID分配信息;所述当接收到所述终端设备发送的数字ID信息后,所述服务器根据所述数字ID信息更新所述数字ID分配信息,包括:所述SVN服务器判断所述终端设备发送的修改后的ID文件是否是基于所述SVN服务器中存储的所述当前项目对应的当前最新版本的ID文件进行的修改;所述修改后的ID文件由所述终端设备为所述待分配对象分配完数字ID后将包含最后一个数字ID的数字ID信息写入所述最新版本的ID文件中得到;如果是基于所述SVN服务器中存储的所述当前项目对应的当前最新版本的ID文件进行的修改,则将所述SVN服务器中的当前最新版本的ID文件更新为所述修改后的ID文件。10.根据权利要求8或9所述的方法,其特征在于,所述数字ID分配信息还包括发送所述数字ID信息的终端设备对应的用户信...
【专利技术属性】
技术研发人员:刘安健,
申请(专利权)人:腾讯科技深圳有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。