美文网首页
iOS二进制和资源包的自检

iOS二进制和资源包的自检

作者: 黑暗森林的歌者 | 来源:发表于2016-07-07 22:30 被阅读350次

因为现在做的是企业版的APP,不能保证用户不越狱,也不能保证有些用户喜欢自己修改ipa包里的资源文件,比如更换一些资源图片。因此,我们有必要在请求报文中,增加正版应用的二进制和资源文件的标识,让服务器知道,此请求是否来自正版的未经修改的app。

在沙盒中我们可以读到自己程序的二进制,也可以读到资源文件签名文件,我们可以对其取md5值得到一个标记字符串,然后发给服务器,对比存储在服务器段的MD5值是否正确,如果APP被修改就禁止继续使用,杀掉自己的进程。

下面是获取自己APP的二进制、资源文件和签名文件的获取方法。因为从iOS8开始沙盒机制有所变化,文稿和资源文件分开在不同的路径,而且文稿是一个动态的路径,所以获取方法要区分系统版本。

下面贴代码:

定义加密类型(MD5 SHA1 SHA512)

Paste_Image.png

封装加密方法

Paste_Image.png

获取资源包的加密后字符串

Paste_Image.png

获取签名证书加密后的字符串

Paste_Image.png

可以根据自己的需要把这些信息发送给服务器进行判断,现在我们做的是APP版本号、iPhone版或iPad版再加上面两条字符串发给服务器。

外加自动杀掉自己进程的方法:

Paste_Image.png

补充:突然发现在打包之前clean一下,获取到的sourceData会改变,现在的做法是增加一个弹出的alertView,title是获取的sourcedata的md5值,每次打包前clean一次,然后run一次,通过弹出的提示手动记录一下md5值,然后注释掉alertView的代码,这时候再打包,注意这次就不要clean了,只改变几行简单的代码不会影响APP的功能也不会改变appdata和sourcedata。(如果发现其他更好的方法会及时更新)

相关文章

  • iOS二进制和资源包的自检

    因为现在做的是企业版的APP,不能保证用户不越狱,也不能保证有些用户喜欢自己修改ipa包里的资源文件,比如更换一些...

  • 二进制和资源文件自检

    我们把自己的程序发布到 app store,但是不能保证每一个用户都是从 app store 下载官方 app,也...

  • Bundle文件

    iOS - Bundle 资源文件包 iOS开发:Xcode项目添加资源文件注意点 iOS开发------使用自定...

  • OC包体结构与优化

    Objc包结构 1、背景 iOS系统对应用程序的二进制包大小有严格的限制,ios7、ios8系统TEXT字段只支持...

  • 【iOS 工程管理】自动集成构建资源

    iOS工程开发中,资源主要分为代码文件资源和资源包资源(如: 图片,js脚本等),xcode目录管理形式分为有实体...

  • iOS 用 dSYM 文件解析崩溃日志

    iOS 项目打包成功后为 xcarchive 后缀的文件, 里面不但包含了 app 运行所需要的二进制文件和资源文...

  • (Linux七)Linux系统软件安装

    Linux软件包(源码包和二进制包) Linux下的软件包可细分为两种,分别是源码包和二进制包。 Linux源码包...

  • 基于cocoapods生成framework/.a

    一、iOS Framework Framework 实际上是一种打包方式,将库的二进制文件,头文件和有关的资源文件...

  • 以太坊当前开源钱包分析

    分析开源钱包 从中选取更优的资源包,作为自己的钱包的基础。 Geth本身提供的资源包Geth资源包下载地址,iOS...

  • bundle简介

    bundle是就文件系统中一个资源包,其中包含可执行代码和相关资源.在iOS 和 OX S 中, applicat...

网友评论

      本文标题:iOS二进制和资源包的自检

      本文链接:https://www.haomeiwen.com/subject/bbbljttx.html