当前位置: 首页 > news >正文

南阳微网站开发如何做网络营销推广掷25金手指效率高

南阳微网站开发,如何做网络营销推广掷25金手指效率高,小型电子商务网站建设与发展,小程序app软件定制开发一、简介 Protobuf 全称#xff1a;Protocol Buffers#xff0c;是 Google 推出的一种与平台无关、语言无关、可扩展的轻便高效的序列化数据存储格式#xff0c;类似于我们常用的 xml 和 json。 二、特点 Protobuf 用两个字总结#xff1a;小#xff0c;快。用 Protobu…一、简介 Protobuf 全称Protocol Buffers是 Google 推出的一种与平台无关、语言无关、可扩展的轻便高效的序列化数据存储格式类似于我们常用的 xml 和 json。 二、特点 Protobuf 用两个字总结小快。用 Protobuf 序列化后的大小是 json 的十分之一是 xml 格式的二十分之一而且性能是他们的 5100 倍。 通常情况下我们使用 xml 或者 json 进行数据通信是没什么问题的但是在高性能和大数据通信的情况下如果有办法压缩数据量提高传输效率显然会给用户带来更快更流畅的体验因此做 LiveChat 自研Protobuf 成为我们进行数据传输的第一选择。 三、语法 Protobuf 常用关键字介绍 Protobuf 基本数据类型 基本数据类型默认值 protobuf文本示例 //指定Protobuf版本 syntax proto3; //指定包名 package com.example.testprotobuf; //指定生成的类所在的包名位置 option java_package com.example.testprotobuf.internal; option java_outer_classname AudioAcousticMngtProto;message BandGain {uint32 bandID 1;int32 gain 2; }message Equalizer { //repeated相当于集合类repeated BandGain bandGainList 1; }message Equalizerstruct {uint32 bandnumber 1;uint32 groupID 2;Equalizer equalizer 3; }message ProtoInt8 {int32 value 1; }message ProtoUint8 {uint32 value 1; }message ProtoBool {bool value 1; }message ProtoString {string value 1; }//注意 //1、一个 Protobuf 文件里面可以添加多个消息类也可以进行嵌套 //2、上面的 1234 并不是给字段赋值而是给每个字段定义一个唯一的编号。这些编号用于二进制格式中标识你的字段并且在使用你的消息类型后不应更改 //3、1-15 的字段编号只占一个字节进行编码16-2047 的字段编号占两个字节包括字段编号和字段类型因此建议更多的使用 1-15 的字段编号 //4、可以指定最小字段编号为 1最大字段编号为 2^29 - 1 或 536870911。另外不能使用 19000-19999 的标识号因为 protobuf 协议实现对这些进行了预留同样也不能使用任何以前保留reserved 的字段编号四、具体使用 //配置环境 //app目录下得build.gradle: plugins {id com.android.applicationid com.google.protobuf }android {......sourceSets {main {//实际测试指不指定无所谓不影响 Java 文件生成proto {srcDir src/main/proto}}} }protobuf {//配置 protoc 编译器protoc {artifact com.google.protobuf:protoc:3.21.7}//配置生成目录编译后会在 build 的目录下生成对应的java文件generateProtoTasks {all().each { task -task.builtins {remove java}task.builtins {java {}}}} }dependencies {implementation com.google.protobuf:protobuf-java:3.21.7//.... } //根目录下build.gradle: plugins {id com.android.application version 8.0.2 apply falseid com.android.library version 8.0.2 apply falseid com.google.protobuf version 0.9.3 apply false }//java代码示例序列化的过程 public class MainActivity extends AppCompatActivity {Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);}public byte[] toByteArray() {AudioAcousticMngtProto.BandGain bandGain AudioAcousticMngtProto.BandGain.newBuilder().setGain(1).setBandID(2).build();AudioAcousticMngtProto.Equalizer equalizer AudioAcousticMngtProto.Equalizer.newBuilder().addBandGainList(bandGain).build();AudioAcousticMngtProto.Equalizerstruct proto_output AudioAcousticMngtProto.Equalizerstruct.newBuilder().setBandnumber(3).setGroupID(3).setEqualizer(equalizer).build();return proto_output.toByteArray();}public static AudioAcousticMngtProto.Equalizerstruct fromByteArray(byte[] data) {AudioAcousticMngtProto.Equalizerstruct equalizerstruct null;try {return equalizerstruct AudioAcousticMngtProto.Equalizerstruct.parseFrom(data);} catch (InvalidProtocolBufferException e) {e.printStackTrace();}return equalizerstruct;} }
http://www.zqtcl.cn/news/699691/

相关文章:

  • 做网站用微软雅黑侵权吗wordpress 同类文章
  • 免费下载建设银行官方网站自己做网站犯法吗
  • 手机网站html代码附近做广告牌的店
  • 建设和优化网站的步骤wordpress 模板 含数据库
  • 太原制作网站的工作室wordpress弹幕播放器
  • 英语网站开发菏泽做网站优化的
  • 宜昌建设网站公司做网站语言服务器 空间
  • 湖南做网站价格广州网站建设哪家便宜
  • 建筑工程素材资源网站中山做网站建设联系电话
  • 做网站关键词集团网站群建设方案
  • 网站开发有哪些课程网站开发好要租服务器吗
  • 鲜花店网站建设的规模设想网站之间的差异
  • 网站怎么在百度做推广郑州建网站
  • 机关门户网站建设顺义做网站
  • 网站开发公司东莞环球军事头条
  • 企业网站管理系统添加教程如何用python开发网页
  • 公司网站建设需要资质wordpress admin
  • 万维网网站301重定向怎么做国家城乡建设规划部网站
  • 现在的网站内容区域做多宽俄文网站开发翻译
  • 上海闵行建设局官方网站做电影网站的流程
  • 怎样做水族馆网站wordpress第三方订阅地址
  • 东莞做网站注意事项如何查网站的百度快照
  • 做资源网站需要什么郑州哪有做网站的公司
  • 不属于网站架构开发一个游戏软件多少钱
  • 电子商务网站建设 市场分析广州有哪些做网站专业的公司
  • 广州网站建设南宁厦门城健建设有限公司网站
  • 课程网站开发的研究现状网页设计制作音乐网站
  • 建设工程法律网站网站美工做专题尺寸多少?
  • 甘肃制作网站godaddy wordpress空间
  • 做淘宝客网站要多少钱心理网站模板