零点看书

字:
关灯 护眼
零点看书 > 大学没毕业,你怎么登上福布斯了 > 第241章 Network

第241章 Network

第241章 Network (第2/2页)

之所以没有去技术部让他们去做,第一个,这些程序员未必做得出来,第二个,这个工作量并不大,只是植入一个程序。
  
  最关键的是,如果可以解决这个问题,那么核心技术必须牢牢地抓在自己手里。人嘛,不能吃一堑不长一智啊。
  
  所以林渊准备试试自己能不能够跑通。
  
  坐在电脑前,林渊调出了谷歌AdMOb的开发者文档。以他前世的技术底子,看懂这些底层的逻辑并不难。
  
  但真正实操起来,林渊很快就发现了2010年安卓开发的两个技术难题。
  
  第一个难题是广告ID被劫持篡改。如果按照谷歌官方的常规教程,直接把代表自己账户收益的PUbliSherID写进安卓的StringS.Xml(字符串配置文件)里,那国外的黑客只要花三分钟解包,就能把这串代码替换成他们自己的ID。到时候游戏是林渊的,广告费全进黑客口袋了。
  
  第二个难题是暴力剥离SDK。稍微高级一点的破解团队,会直接在反编译后的Smali代码层,把所有调用广告的函数全部删掉,搞出一个干干净净的“纯净无广告版”,那林渊照样一毛钱赚不到。
  
  不过,这些问题对于2010年的程序员来说或许是无法解决的难题,可他林渊不属于2010年。
  
  林渊笑了笑:“完全小儿科,给我擦皮鞋。”
  
  在未来的安卓开发环境里,这些防破解的底层逻辑早就是行业的基操标配了。
  
  林渊双手放回键盘,开始噼里啪啦地敲击起来。
  
  针对第一个问题,他没有用常规的Java语言写配置,而是直接动用了NDK,用底层的C++语言写了一个极其复杂的动态加密算法。
  
  他把自己的广告ID拆分成几十个碎片,通过位运算(XOR)和动态混淆,死死地锁在了一个.SO动态链接库文件里。
  
  在2010年,能反编译Java的人一抓一大把,但能逆向破解底层C++汇编代码的人,全球都找不出几个,更别说闲得蛋疼来专门破解一款休闲游戏的。
  
  针对第二个剥离SDK的问题,林渊做得更绝。
  
  他写了一个非常阴险的“心跳绑定机制”。他把游戏主线程的渲染引擎,和广告SDK的反馈机制强行绑在了一起。只要玩家在屏幕上划一刀切碎西瓜,底层就会去检测广告组件是否存在。
  
  如果国外的破解者强行把广告代码删了,游戏刚开始还能正常运行,但只要玩到第三分钟,由于接收不到广告组件的“心跳回传”,整个游戏的内存池就会瞬间自我溢出,直接引发闪退死机。
  
  把这两套在未来烂大街、但在现在堪称“黑科技”的代码敲完后,林渊仔细地进行了深度混淆和加密封装。
  
  看着屏幕上打包生成的最终版APK安装包,林渊满意地点了点头。
  
  果然天生牛马就爱工作,他每次自己上手敲代码的时候,都觉得整个人神采飞扬。或许是出于技术碾压的成就感,或许他骨子里是真的喜欢干这行。
  
  这套封装好的核心利益模块,只有他自己一个人知道密钥。
  
  林渊怎么都不可能让之前张凯那种拿着源码背刺的事情再次发生。现在的他,谁都不信。
  
  【写完这张,还有4张,这是礼物加更的,今天12点之前不一定写得完,但是明天肯定是写得完的,我不会赖账的。】
『加入书签,方便阅读』
热门推荐
极品全能学生 凌天战尊 御用兵王 帝霸 开局奖励一亿条命 大融合系统 冷情帝少,轻轻亲 妖龙古帝 宠妃难为:皇上,娘娘今晚不侍寝 仙王的日常生活