【原】就IOS发布app时如何保护文本资源的一个方法

近期的一个app是本地的,数据源来自于本地的一个.json文件,里面的数据是这个app的灵魂。近期快发布该app了,很担心发布后的.ipa包被竞争者解开然后信息发生泄漏。我的处理策略是:打包的时候放的是一个字符串加密过的json文件,就算别人打开也是乱码。在程序加载时就对该文件进行解码,在沙盒里面生成一个解码后的json文件,在程序退出时删除该临时文件。这样可以保证在不影响现有代码的情况下在一定程度上保护数据。电脑出了点故障,随手用C++在windows下实现了一番,文件先用txt,加密算法先用简单的ascii移位。真正要用的时候同理,加密算法可以用MD5:

?





1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

#include "stdafx.h"

#include <iostream>

#include <fstream>

#include <string>

using
namespace  std;

#define KEY 1

int _tmain(int
argc, _TCHAR* argv[])

{

    string
oneLineStr;

    ifstream inf;

    inf.open("ReadMe.txt");

    ofstream outf;

    outf.open("encode.txt");

    ofstream outf_recovery;

    outf_recovery.open("recovery.txt");

    while
(getline(inf, oneLineStr))

    {

        cout<<"加密前:"<<oneLineStr<<endl;

        size_t length = oneLineStr.size();

        for
(size_t i = 0; i < length; i++)

        {

            oneLineStr[i] = (char)(oneLineStr[i] + KEY);//ascii码改变

        }

        cout<<"该行加密后:"<<oneLineStr<<endl;

        outf<<oneLineStr<<endl;

    }

    outf.close();

    inf.clear();

    cout<<"开始恢复文件============================";

    ifstream inf_encode;

    inf_encode.open("encode.txt");

    while
(getline(inf_encode, oneLineStr))

    {

        size_t length = oneLineStr.size();

        for
(size_t i = 0; i < length; i++)

        {

            oneLineStr[i] = (char)(oneLineStr[i] - KEY);//ascii码改变

        }

        cout<<"解密后:"<<oneLineStr<<endl;

        outf_recovery<<oneLineStr<<endl;

    }

    inf.close();

    inf_encode.close();

    outf_recovery.close();

    

    int
tmp = 0;

    cin>>tmp;

    

    return
0;

}

当然,这种方法有个缺陷,对于非常大的文本文件可能会有点耗时,但是正常情况下几乎感觉不出来。不知道还有没有其他更好的方式保护APP包内的文本以及图片资源呢

时间: 2024-10-23 04:12:12

【原】就IOS发布app时如何保护文本资源的一个方法的相关文章

iOS发布App被拒绝的原因及注意点

每次发布APP时都会遇到各种奇葩的问题,奇葩问题虽然解决了但是审核不通过显得更为严重,不仅浪费了上线时间而且还要重新发布进入漫长的等待,现在把之前发布和审核遇到的问题总结一下,希望下次不要犯低级的错误,提高审核通过率. 1,app中不能有test,demo,beta,测试等字样,否则会认为你发布的是测试版本 2,由于苹果AppStore提供了更新应用模块功能,不允许提交的应用有版本更新的功能,一旦检测出有版本更新的提示框立马会被拒绝. 3,必须要提供相关的登录账号在备注中,并且测试账号必须要可用

最新iOS发布App Store详细图文教程

网上有很多关于iOS发布上架的教程,但大多比较旧而且不完整.不够清晰.所以整理了一个详细完整的iOS APP发布上架App Store的图文教程.分享给小白到大神路上前进的你我. 上架iOS需要一个苹果开发者账号,还没有的话申请一个. 上架过程分七个步骤,按步骤一步步来.照着教程做简单.快速就能完成iOS APP的上传. 1.创建APP身份证(App IDs) 2.申请iOS发布证书 3.申请iOS发布描述文件 4.导入iOS证书到xocde打包IPA 5.在iTunes Connect创建Ap

iOS: 首次使用App时,显示半透明新手指引

在很多的app,我们都会发现这样一个功能:就是app启动后进入主界面时,会有一个半透明的指引图,它会提示用户如何一步步进行操作,快速的熟悉app的使用规则,极大地方便了用户的使用,也加快了app的推广,优点不言而喻. 我主要介绍一下思路: 首先创建一个半透明的蒙版覆盖在当前整个屏幕上,然后用贝塞尔曲线绘制白色的提示框(矩形或者圆形),接着给出带箭头图标的文字提示,也即在蒙版上添加自定义的子视图控件.当然,最后给整个蒙版添加一个触摸手势,只要轻轻点击就移除蒙版.子视图.手势,恢复正常界面. 注意:

iOS 后台退出app时不执行applicationWillTerminate的临时解决方法

- (void)applicationDidEnterBackground:(UIApplication *)application { // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in

最详细iOS APP发布App Store上架流程

上架iOS需要一个付费的开发者账号,还没有的话申请一个或者借用. 申请开发者账号介绍 上架过程分七个步骤,按步骤一步步来. 仔细看这个流程,少走很多弯路,不用一步步去试错,提示效率. 1.创建APP身份证(App IDs) 2.申请发布证书 3.申请发布描述文件 4.Windows下上传证书编译打包 5.在iTunes Connect创建App 6.Windows下上传IPA到App Store 7.上传好IPA回到iTunes Connect填写APP信息并提交审核 一.创建唯一标示符App

iOS 企业证书发布app 流程

企业发布app的 过程比app store 发布的简单多了,没那么多的要求,哈 但是整个工程的要求还是一样,比如各种像素的icon啊 命名规范啊等等. 下面是具体的流程 1.修改你的 bundle identifier 为你的企业的app id : 2.修改Edit scheme 3.修改为 Release 4.修改bulid setting 的code sign:为企业的 mobileprifile 5.然后 Product  archive 归档构建你的app 6.选择 distrbutio

ios app: 使用企业license设置发布app的过程

ios开发者证书与企业证书的内容,关系,以及ios app 使用企业license设置发布app的过程 iOS是一个非常封闭的系统.授权文件(.mobileprovision)和签名证书文件(.cer)的存在就是为了验证身份信息. 首先注册apple开发者,然后花99美刀购买一个个人.cer开发证书,企业想要发布内部使用的app则需要花费299dollor. 这个开发证书只能自己使用,如果有多台开发机器,可以先把cer证书导出为.p12文件(可以设置密码),在第二台开发机上像导入cer一样导入这

【原】ios打包ipa的两种实用方法(.app转.ipa)

总结一下,目前.app包转为.ipa包的方法有以下几种: 1.Apple推荐的方式,即实用xcode的archive功能 Xcode菜单栏->Product->Archive->三选一,一般选后两个. 局限性:个人开发一般采用这种方法,但是当一个证书多人使用时就稍显麻烦.一般多人开发时都是采用provisioning profile+P12文件来进行真机调试.上述方法在最后导出ipa包时需要输入appleID,这时还要向团队的其他人要.采用provisioning profile+P12

ios替换app启动图片时系统报错的解决办法

ios替换app启动图片时系统报错的解决办法:我个人建议是在开发时候经常行的保存项目,并且在修改项目图标图片.app启动图片前,一定要先备份一份没有添加这两项图片的项目. 如果您的项目已经开发完成了,进入到发布前添加项目图标.app启动图片的时候,一定要确定了这两项的所有图片不会更改了再去添加,否则更改已经添加好的加项目图标.app启动图片就会报错, 如果您报错了,百度之后也没有解决办法,那么就尝试在已经备份的项目中重新去添加图片就可以了.