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

【iOS(swift)笔记-14】App版本不升级时本地数据库sqlite更新逻辑二

App版本不升级时,又想即时更新本地数据库怎么办?

办法二:从服务器下载最新的sqlite数据替换掉本地的数据(注意是数据不是文件)

具体逻辑

1、首先本地数据库里一定要有一个字段(名字自己取)

比如dbVersion,可用数字(比如1或字符串1.0.0)存储,记录当前数据库的版本

2、访问服务器

服务器同样也有一个属性dbVersion2记录记录最新版本的“App的本地数据库”

如果dbVersion2>dbVersion

则下载数据进行更新。

网络数据互通通常用JSON结构,但是考虑网络安全性,通常传出去的数据要先加密,得到数据后再解密。可全局加密也可局部加密,这里为了让观众看个明白就采用了局部加密

举个栗子,下面贴出来的是服务端返回的一串数据,

基本格式是这样滴:

数据库版本@@@@@表1数据列表@@@@@表2数据列表@@@@@表3数据列表

每个表的顺序事先定好,不能再变。

因为数据库有很多个表,所以指定字符串将表数据之间分隔,App得到数据后用split分割出来,然后再将每个表的数据转成数组就OK了。

具体数组转JSON,JSON转数组的方法自己网上查找

解析出数据之后,再逐个将本地数据库sqlite进行更新即可

===A===>18@@@@@[]@@@@@[]@@@@@[{"img":"zIX4EGSrqQvIo/2s7ySukg+Md7U9SrlyxneSfUb+xnu0Y+CKyhPLaOPx34qJlnN8ZA==","date":"","sub":"Zl/Osw60h1HUfCx29RCmZPMwc68d85RHXLSYwQ==","domain":"WmGWYO6hIE716RuZAyjvXGe1oW3tCrORBiWpUVkmzB1GHJUF2w==","device":"mac","node":"i8EWwxgUTnuawmhftjhWNEd3BsvLKoFkjzZLQXHLlwyIE6GZTPlJ62rPVlw=","id":1},{"device":"pad","node":"DVKVj0Cw6pLEVWN9yGTQ0mkEhVQDgEe12GChGcvB91+DWSA4eEaVEnExri0=","sub":"saqgzOB3eMu+J7J1I+fQKxTHG/RX5PtNmgdt1Q==","date":"","id":2,"img":"1QLcJvTnp+b94mqLit7ue7ewQTH+vuFXJxWlv43BUjarZQgU8ufmxyWoIuO1w54/Sw==","domain":"gGbytAnayppwc9YzAMjWKDbWsDXOYkfg2Fv52zYsCWsH9IwYwQ=="},{"node":"dUr3gxX5pXtgpfnSuqlFWOOCObx8INQ+o1owVEENEgskQeCu+7l8uT884V4=","domain":"FvqqxW7HIuN+6Pda9tDEj1EzjhKD7nLu0mP+L1U4JtkcicnIsw==","img":"f4GQ4jPsxh4YGYDhxHXI8GlpzlLWPU8ZF7nuZBK8aANiAQFANr6mu71Hrzy/NHMgLg==","sub":"n0XpEW4dWIx+keMf+5EoX4HxM+Ao4/WPFbWMtQ==","id":3,"device":"phone","date":""},{"date":"","node":"EngsJFUFZqbCHKlF3FUtVuwtdfqVtimmv8EOCOzh9KIOHbSTpidlxvcvOyI=","domain":"fgpRV58bTW/ogX/m1woHo95vjD9rNkVeAMhIpvVs9/Fg/qy3ZdYMiCE8AQ==","img":"DI1qjMFdCeiragWN0UhVrxuq9gHIJqt2DNycwLLibuB+bfV2GBqtSShwpfKrhHGVAA==","device":"mac","id":4,"sub":"fD2JXtQzJQJe/JS0vx+VF5us+8TbzGbuJdUxKg=="},{"id":5,"node":"oLWXtc4q3JgeNf4LzGz4zBXL8pPFh9hLVBMK+sq2dU66iwxk7x3sGgzI/QQ=","date":"","device":"pad","sub":"cF0NV5sICsn3QSBAnHZxfEexoIzRqa47l8fm8g==","img":"dLwL2s+ru3Z4b0e90C6Rmgr1coSIvd6ig3+TvpMTovahtsaLTkG7Pd0li1dB9T/AzA==","domain":"E5Flif+XV0+yI0qabakBasgMgnts/HbVds7ADFXtc8pO32C7tOMZUg0pog=="},{"node":"ktodhWW0O6nKLxXGo56p/WDIVEdvQWkz2bugRQJ2qVfc2aB6kwtJdx1outI=","date":"","id":6,"domain":"b+foqbBEvwkBe8LyVJGYyjaLuLK8V52coxAfeelj6xzNKrd2iy3hbiCyQA==","img":"DBNXgSlyZhcVEwU/PZQX6MTARdT4CCseuFwxLU5x/0e/bb5atbiv97fXaibiXWhuYw==","device":"phone","sub":"aJ+1+dxIq3O7GBNOafBiLbTzRByXC4eV2pz48A=="},{"date":"","id":7,"sub":"joAAMTcogFAOJgqoPEfJlG0IcYnocmXmWVBrFA==","node":"p05g2R7XTeQOSihzUjCOJ/g7A3A8qcvcO5Ru38BgRCkNN+qSUbPBCMmk","domain":"gekdLfOb0LcSFOMnitp4FvG2TO+P2IPpSVIFCUwYvDGM3nYd1HSj5F8=","img":"nCOp6ixmooIrbQte1d88ifyxgGxDjkfXfdgOBiuNrgqIfUXYbh8MQVWQCZWcsA==","device":"mac"},{"device":"pad","id":8,"img":"npzP1AnlHrVMBlURK6RlERzbZLB2IKkyzACKwOazOBQgoY7sb7oARfso4iUWgw==","domain":"q8LLam8EMP4DiDXdCHG8GPmSPY1O1u9uGQiZUr89Yt0btY4h7ldoQ6I=","node":"WfhlsTSMdVU05MUa3RAHPI47YSDKnk7SHkSUolbP2Sz89HlxYRU9eQNN","sub":"x9mIgMtdgtnZhkFck92LGRSkxO9jGF44d5poDw==","date":""},{"sub":"ZGqJJJ8hx7rI57TZUybaybFxCXwBHlKtifqWjQ==","img":"ahMPacv8sbBOr0MH6QLO8wf+XPGqIEiuBC8p42AlvNbMnmVAlFKy3fpKUwfT9Q==","node":"us5sV3qtfPg+rVKLt63OK1Nki5JuWxNQykkgFHyw9WhwbdqC4JJA9HcS","id":9,"domain":"oVzU0z7nhPZOP5DDWZrCVgx9zn6fTyiga0zEkKc9ZRBy1xlE+dmsnUM=","date":"","device":"phone"},{"device":"mac","sub":"clmY+21m/tTzN4ByxbGkrOBdA2yuGUUJ/lpN/fgpQzk/2+F+ZLQ1GjCny0o6IE8iPXBIp4typofydgc=","node":"Lg9+uDKHhLNd5gh1t/mDyW4ZdKRh2lndXS7f/PWrkp45ZglTYY0MV2fFXPI=","date":"","id":10,"img":"TW2QRE7heRb/yw8T0FBsMpG62zdy1vrOOYnGFInik/XlneYZ/fUq7W3rXwRqFCucOspio4g1PtzUtjkuuNtoZiiPgUmpbV70K71grVUg","domain":"7JBvQnlNdBX55D3eNw1dImntT58CWmUuecm3IYBXGkPoFFZ8/CrHDHVh40I="},{"node":"lVxiaKRbFv0xMEGLSDntb5ZuZ3md2CtYZK+9/RqTQk+6qU5NPaApPONXZo0=","img":"l3P2Hx/iLnybD2EolTZUr1ToIG9jnW+ZtbUJQ5thlMRc6fE63/pmYoBvs+slqJKeelWuO6xPeZnDaTJfdTtSAbMF50UT2FMDq6Y2AFuP","sub":"8pNa7fWtgTP2U8lHCoZavw70Ev4p50m98cFhYyPmYz+5nCuXId8x1Uh2lXlOrZWxUJ4Iw1feLYzaifs=","date":"","device":"pad","id":11,"domain":"KvZAB5vzdYz/X/mqYjkMvGNkKkXwKuRfALYIxKPW2owSCU7HhYmouv7Sxjg="},{"date":"","id":12,"device":"phone","sub":"a/my9PixeH8d8OpLp0VRq4X406Uj3wbrImyvBZOCB7uXfPxWehbWq5j7VqHV6WmEW7h2fYqfn53AEdg=","domain":"f0OEo7SwjHOl6+UojAtWGaxXHANZv31ADLh8qLG6VUayvuXG99cSk53QBiI=","img":"pf7YcHu8NmTDaOQpwz8X9wRImnbKeD1WqHSFj7zzderIE46RbSYOvMVZbMCS8b0V70K5GYBZyHp6De0BDaLqnadxv7AYmM8slMZ5e81E","node":"fuFG5+/UEviu6w2Fqm4iSV6H2j8RyF3VI/yWhJT+uPPOib/gdWIM3HiJJfc="},{"device":"mac","img":"ipgVtdtVekvdOHGw6n3OyVcohhvgJyqJNOhP1qWzzQxIJAlQC+bTF3c7","domain":"REzYKHePmtNMDySaSRKbRrNbqe60OltxswCJM2lTn4vPPnnquo2UyUuTzdaPLlYRU7gnfMg=","date":"","id":13,"sub":"hrgfhoEbqSYRIgum8o+eTGhCPoPRRwkDOS+y0A==","node":"2RNmH8fPIjiAmT8ozhv223/3jDg8HYvD5oFkqoeTKTbqc+yPwug="},{"date":"","domain":"mD+T3zQiMaOpzOEdCwsIYvPcAesi2tBMd2u5yqcj3uLQSs2MsnFC50985aC0nx5/1jqrUCE=","id":14,"device":"pad","img":"pHW+FtW2N4ZJ+cRLSYvEjLc0AcvcytqduFKyvXAJSP3aK4L1X2uRR0FI","node":"2v2HhY7WG4i95N+OFYpP8oWIVbaWtB1VKatYtiqiADWZCjBVMG0=","sub":"LNLJaKvCkLkzneTOz7bX+FFndL5k2qghaDYjMQ=="},{"img":"O6JsBiM/xVK2u7vWT6mLVTNhK6Xc/yF66oNWRypdh9ogFH+WvX7xP7jG","domain":"/LjXY7lOc7aNfYIq10MJs6KaWD/DXKhczcyWgKS7jQK474ckxSMGsNPI6s4xrEY8/4M2lZ4=","node":"GLJKvG4hZnbq/gpdD32QYDQXsOIdT0MWd/n774JsKfWxZ6Qj/Gg=","device":"phone","sub":"WkgALGDgUCsu/EA+knDVJaveenYnRTd8Xf1GSg==","date":"","id":15},{"img":"/E2S48+pDdOCW2hUE+Uodr/SYplWtKf2urM/h+4pfd3Lau7G3iXWBXA=","id":16,"device":"mac","sub":"/u56UxeUx7Grkeb1xkNgsH3kQ9Q+GBf0xqclOQ==","node":"QL84ohB3Y+vp545F+C0JsS1q8tgpd1a/2AGo50PsrZz5bBgotg==","date":"","domain":"BwSRlCOWjuJZ5jwNk40RgDT2vigqT+Yptkl6GJTZ4Gv0Sg8+EQ=="},{"img":"wOwyQivfjm9AQiO5npWTPRkAhmeihELG7q89l4FvmYin+XlPqzpdnSI=","sub":"vDpT+3kXXnK1MeF6+fv32q7k7J+TTpH6PJGiIQ==","id":17,"domain":"3puQkXXmqp5MKGm5fkYteurXZybn7aTe39zOzShBGDpJ6GMMeQ==","device":"pad","node":"QOcHZlpn69AZusfINKhYtsg82JFEe8fdwVgS7cnWUqVYfHRvxg==","date":""},{"id":18,"date":"","sub":"Z2HQayuPnxW4O67wBl/XMUDidrdhVGVNxXnj8Q==","node":"WdFLkKA7gefYycll1nywizk1LOUzshC5B3Os5JHG1ou4+x+n8A==","img":"txAUjgSXWNWYDkRffqCO4yqq5uuQknPrZFvBpFd+PLrQHeqzzmh+0Jk=","domain":"tWCZnw7ZLf5//VKXN9iec0HR0xeqqxmyb/HpSjgpAnWPSS4i1g==","device":"phone"},{"img":"E8KrGJT6ZKL6Rc4ep9MXkeWtd9Tu8Vc2ByfscGw+h0EObRUqGRgDYgyyXNDQrjRZMTVkuTw=","sub":"u/wIsqQ2xeHF9bbeM0NZ3NBkc387z5RGLLz58g==","domain":"Bnb2qDb9JaLZuNtj+hLp31LfABFFVRWD9JLvJMg36liiJE+pX8j+Px6IQA==","node":"aZAmuHzOCm/NDfIJqkgx52cnGFeVqvY4Vc1e2ItJn/B/WDvunpg6ooJ27OpkHlHK8g==","date":"","id":19,"device":"mac"},{"id":20,"node":"7K8qbTFo6wxB0eTI6rNcn2FdD2KGDKzxJZsof4Csx0I2yV61NW4kbtLHeAl4sOA39w==","date":"","sub":"BZDdELKooUPQvyKNJaxLb8ThGqV0eQ1FOnZOUw==","img":"oYXmt9Lz+EhELkfpaKpK8XkXVTdofPgCWO23gfmKB1zo7hJuerYdfXWcRLu7oo3oUAKoE4I=","domain":"LKDgsP1m4zluSG9LGj8UEFd7ClPwCuHYcOKsQZvoT6bQwQyYyCdVPowsIw==","device":"pad"},{"domain":"Xzeb4bEAhO9OO+T2Cae7gsdxyH2IzIK0Hcpk57FD/Y4fCi4Zu4mI0QNwGQ==","device":"phone","sub":"WSfTDo9WC569/fVvQZxLYY055NB41966VuBeJw==","img":"6FgldTEPf0W42SacGDAD+xDogulQlGneNPORh2EfHl6myDa/27EUEXDxefusqS+eR01wH9o=","date":"","id":21,"node":"XobLn1Z6fYBjoCTwbX6zCfOVr4fmDLI5ifTxMnGMl81U6MEujXZSob6wLfL/NI1uaw=="},{"domain":"dTGN47tfvQLow2VCzuwXBfnSH0CMaCPUa+IjXVqiyEqRHxpuBFRo0Dn7","id":22,"sub":"dEUelfLQJtjNNgGG+3CbYftTQjLyrOl8bIal3g==","device":"mac","date":"","img":"heu2tlEWX17NpaLuGQ8oZLYcpq0WbWZX6404cYY61wQkE6RubYc/oSXNVCfCDQ==","node":"TlFDMzcQ2XXk1b78lRILjJkMJWeeKGak/MUCAb1anw7s/h8MXNGwgUEO"},{"node":"a1sEg3mHBpQZ1FoXNI/9yHwAWTkiGumhdXTCsNHrp3vNbrzjbQNXDOJE","id":23,"domain":"uJD3dj+QFMdG/IdS1anVXHazbrFg6LPUXaeCEyckNCINiNWHMTIxm2+o","device":"pad","date":"","img":"Jk4NIwHQVWlocOylvztzRI+OGTk43/nnGQPRPIfT4H/tYBcnlo7w8/zLxhWojg==","sub":"x4cVIh0ibKcIYIH5b3o9KXKZeT/2hRmAhO+MqA=="},{"device":"phone","domain":"VMznhb64LKnJ3B+xlzp+aedCgEzm8u4VAaZLXoAzfaWpPlzAKBfIhe9p","date":"","sub":"UJ/+I+TFbgwef8cDX7fPUcNoKTWuxWesvEOSBg==","img":"6qR0F1BZKVKVuoPqP57stg4zWBx764+g6XKyriq9cpdwfnZXnTy+DIFzcrZWRQ==","id":24,"node":"04aRdp5bsDxgdltQL6fTQp+0zqnFgcEeWEpapRDOMiQzmfEYsfZv+imN"},{"date":"","device":"mac","img":"0ckSjr6h7zf1weKuIj+Emea3prTGJU4MAMsmatpdtHmqyWv8P2MIB3a8Ls0=","sub":"V2pCjNfwr+i5fpa1frZq4MoqnzUPFbPrHfkyxw==","domain":"al+sPyX1/CGJpH0zoOKohvmxCxZzGRi3/iHI5Y9SGuIg1rpgi6V9MvSv","node":"LSH2tW8fPeTjX8/J44kXMlwblLuZ1NzDJ5PBYlUylkMHuHIbeNaMNA==","id":25},{"device":"pad","sub":"ukl6nXrTuGnU9mwxrcj5KNRh2tsznGvDSR6h/g==","id":26,"date":"","img":"JtJqTb9QqP1sz13kvSf4I7kni/Pad1AKq/mXKnIaE1jV9dQIOKQRiaLdF/c=","domain":"d/NrIEyPxgJz5yk5x47Yz3ZE6sbqu504vNodpfKrzJZwaEnafVubflHG","node":"3ApeexqK8i4UA/aONBiP8Tfp/pCEn5STsaeMrpKejeRBOCeYn4iyHA=="},{"img":"brbbnOczRp9VgrVScMrsMxW/qPqwrb6+zH/wTFLMQ+p4r8E7VyKuHy61UFY=","date":"","sub":"8tXYbSgS5BfTOB+MVC0cBeOsjZulblNxrbSZ/A==","domain":"i5xAgGL/JyU73dnDb9rsy+KLbn8tOuY8r3YnseU54X+SYvl4uoMymCKi","id":27,"device":"phone","node":"B2TNIoPNq/+IEzwychlsDANZynkIEEcjdbzffFEDIv/RhzCBR2/4Qw=="},{"img":"Zr1DXR1qJHWNA7ikK9ik64b4shzeTZg2zhJpRNSDbuYFov21OBqJaRzDgRbB","sub":"tJAS1OtkzsrwIxDmf4vc4HIbISrpOFYXIQxGKw==","date":"","domain":"2LvOPOUSE5cvsbYbrbM/eokkp+H3uNeTPBxTkxXpQc/VspCGOQ==","node":"t8KIGn7ky2Bkfm29r7CYoTeI+wFzHq86kpf44bsHAZ6MAUCgA2rk/o4=","device":"mac","id":28},{"img":"EnklKhb3FAODebTaz4dU4sFR1X0j5Gl2Jm6pCKoHRdDgYWweH+Dq1u/5sj6D","domain":"aJjYF1sk243c/y69K/1fo2HpCY2DC5iya9bBEOBvz22iG7lW0Q==","sub":"piDOmp8WJD7vg0B9LF9m327nXsjs5yU6JSVcGg==","node":"J/Aos6O68f0DAVFrmLNe0uFl9zP6YFP7AEqARrJ2xxUZtaoElHLRHio=","id":29,"device":"pad","date":""},{"date":"","id":30,"domain":"Jezi4XQ+vNSZel1p0usBT6okP1yOZmPMKDHG9C6TXxALcMMzIg==","device":"phone","node":"eYmejovpL9jepbuYXWGowuCt6Pu0WEG5r3w5aWgU4yTh1H9YTld9PZ0s3w==","sub":"/OiJxbaFxUhvkUxBC7a+ie3lI396rZPgYnh/rQ==","img":"6m5QbrdJDI7eklBUlDmmDypAl/2FbFEd+uiPZsM6vADD9ttMReFTMpkq6P7TFyIuMKIWfvtCSPbUj41dzr63rtgcVcdTGA=="},{"sub":"KI8VmAkyolW0CIWJySnDANj2f9mSjd4uSskuEQ==","domain":"aabBr+3s9idcvc93Q3/h7wSHO+whqhBvvrLRUFD5vLo7IuHtOg66","id":31,"device":"mac","node":"0+hYoVxZfoxlFB/or8Zsdy1ETr4hwFXmta4lGpu/xeTEA9gH1F8+L3SopdE=","img":"jK4jqZDyiNwSC7XvgVTPdwXTPaPg61y+retjcZUwuBjlrT7lkaW/5PRVD85zstC5","date":""},{"device":"pad","sub":"hIsAb+rRRaquoK8ueaBfP5jlPQSoFbKVUcRYvQ==","node":"gwUq0pZTOS0U93X6yDlj+5mo7xJ1sruK16L1ETkXpItxoYeaVmjpSSxUJzY=","domain":"7EGCJziI7bn8MLzDUtWpTitny8PRuxvrboMacUK8GCiU2A5SmrIO","img":"ilkFd+jmYsd1vvNbY21sILUBFo8olL4xDloMXlCTqvgr8Jyl/u3KYjTV1n4tcXpW","id":32,"date":""},{"img":"i5vEQvykuQtA/qSGgDS+JbHV4pvU5WLrmfPuBkQqDylKkkizjO+Oi0lbtFOMa8ek","id":33,"node":"GGKDlrqNBD6lIkvoGIegN9xPA6mHshe03UcwK4IRZI7mAIOW8IzjwGaVBvk=","sub":"73RfZK2KzWKKTLp7BRCQfmMmQuxP5CqRm8pEMQ==","domain":"v3NRBYmafxb8yVSYioYNt3+9kP3xwr/S7y565M0wUI4KT6ByZTVQ","date":"","device":"phone"}]<===A===

相关文章:

  • 【数据分析】第四章 pandas简介(1)
  • 基于STM32的循迹避障小车的Proteus仿真设计
  • 《棒球万事通》棒球特长生升学方向·棒球1号位
  • 探秘集成学习:从基础概念到实战应用
  • 神经网络与深度学习(第一章)
  • 树莓派4B串口通讯
  • 【JAVA后端入门基础001】Tomcat 是什么?通俗易懂讲清楚!
  • ISBN书号查询接口如何用PHP实现调用?
  • 使用new操作符动态分配
  • 【Spring】RAG 知识库基础
  • Python库CloudScraper详细使用(绕过 Cloudflare 的反机器人页面的 Python 模块)
  • CSS之动画(奔跑的熊、两面反转盒子、3D导航栏、旋转木马)
  • Java Script函数
  • 知识图谱系列(5):表示学习
  • 前端八股之Vue
  • 29 C 语言内存管理与多文件编程详解:栈区、全局静态区、static 与 extern 深度解析
  • 工作流引擎-18-开源审批流项目之 plumdo-work 工作流,表单,报表结合的多模块系统
  • 并查集(上)
  • Android高级开发第四篇 - JNI性能优化技巧和高级调试方法
  • 深入了解linux系统—— 进程间通信之管道
  • 多人运动免费正能量网站链接/廊坊百度推广电话
  • wordpress实名认证/网络seo优化平台
  • 如何进行电商网站设计开发/会计培训班初级费用
  • 网站工信部备案号/百度手游排行榜
  • 网站建设论文开题报告范文/正规电商培训班
  • 如何做网站banner/关键词林俊杰百度云