跳至主要内容

博文

非公开 app 分发

非公开 app  简介 app 除了不能搜索到该 app,其他使用和普通的应用商店一致。 只需要使用对应的链接就可以跳转到该 app 。 非公开 app 上传审核流程 1.appstore connect 新建应用,配置和普通上传应用商店(公开应用)完全一致 2.在备注里面加上一行:该 app 属于非公开 app,提交 app 3.去非公开 app 申请链接app 为非公开 app,https://developer.apple.com/contact/request/unlisted-app/ 4.审核被拒,有两部分,一个是普通appstore审核被拒(可能没有),最后还会多上一个非公开 app 审核被拒的部分。等待只有非公开 app 审核被拒的问题后,再等上两天左右就好了。 5.审核通过后,会通过邮件发送该 app 的链接,此链接其实和其他 app 的链接格式一致,并无区别,唯一的区别是该 app 在应用商店搜索不到。

iOS 常用代码碎片

1.退出键盘 //在不知道第一响应者的情况下取消键盘方法 [[UIApplication sharedApplication] sendAction:@selector(resignFirstResponder) to:nil from:nil forEvent:nil]; 2.文本输入完成后执行操作监听(无 bug,代理监听在中文输入法或有关联输入的时候容易出现错误,addTarget会导致只能是使用系统的输入法,不能使用第三方输入法,如果输入法里面没有输入法,就没有输入法可用) [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(textChange) name:UITextFieldTextDidChangeNotification object:nil]; 最好放在页面基类上面,最后在改页面上添加一个移除监听 -(void)dealloc{      [[NSNotificationCenter defaultCenter] removeObserver:self]; } 3.模拟器scheme测试 xcrun simctl openurl booted "scheme://" 不建议使用这个命令 ,建议写个简单的 scheme 调用 demo,url 不写死即可。暂时发现在 scheme 里面的//在不为 2 个的时候,可能会和app 接收的不一致。具体原因未知。

企业包下载安装问题

1. 下载后,去设置 ---> 通用 ---> VPN与设备管理(设备管理),找到对应的企业证书名称,选择信任即可正常打开软件使用。 2. app过期,或者系统时间手动修改到app过期时间,安装包无法正常使用,手动调整系统时间到正常时间即可正常运行。

ABM包下载问题

1. 如果在下载app的时候,会把其他app也同时下载下来,那么检查一下系统设置,具体路径 设置 ---> App Store ---> App下载(不要勾选上) 2. 如果下载的时候,输入密码后还是没办法下载,尝试下载一个未下载过的app试试。

iOS企业包下载中的下载

 首先,链接格式是itms-services://?action=download-manifest&url=https://xxxx.plist plist文件格式是 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>items</key> <array> <dict> <key>assets</key> <array> <dict> <key>kind</key> <string>software-package</string> <key>url</key> <string>ipa的完整的url,可以是http的</string> </dict> <dict> <key>kind</key> <string>display-image</string> <key>url</key> <string>小图的完整的url,可以是http的</string> </dict> <dict> <key>kind</key> <string>full-size-image</string> <key>url</key...

ssl证书详解

1.我们一般的SSL证书是由三部分组成,根证书机构,中间证书机构,实体证书,一般情况,三个都只有一个机构,就是三层的关系,根证书,中间证书和实体证书。但是某些特殊情况下,中间证书机构可能有不止一个,有两个甚至更多的。这种特殊的证书不是很多,一般人也很少遇到。 2.证书一般是给我们组合起来的,以-----BEGIN CERTIFICATE-----开始,以-----END CERTIFICATE-----结尾的。别人在给证书的时候,如果分开给的话,是可以把几个文件直接拼接起来的,每个三行,begin,内容,end三行。实际使用过程中,一般拼接完三个就可以完成整段证书链了。但是由于中间证书链可能有多层。而且需要注意的是,证书信任链,是一层一层的,先是根证书,再是中间证书,最后是实体证书。不同web服务器,由于配置证书的时候的SSL配置方式多种多样,可以根据不同web服务器组合对应的配置。 3.key的话一般是单独配置的。 4.自签证书     windows一般浏览器可以忽略,所以基本没事,如果是后台交互,客户端这边需要做特殊处理。     android包的下载一般是浏览器,可以直接忽略证书问题,更新可以再代码忽略,其他网络请求也是。     iOS包的下载是由系统处理,必须要https环境,所以,必须安装证书到本地,其中安装需要把证书放在http的环境即可,而不需要https环境。其他的都是代码级别的处理,在网络请求的过程中忽略证书问题。

sqlite数据库

1.新建表 DROP TABLE IF EXISTS "t_journey"; CREATE TABLE t_journey ( 'index' INTEGER PRIMARY KEY AUTOINCREMENT, 'title' TEXT NOT NULL,'content' TEXT NOT NULL,'createTime' timestamp NOT NULL DEFAULT (datetime('now','localtime')), 'changeTime' timestamp NOT NULL DEFAULT (datetime('now','localtime')), 'GPSL' REAL, 'GPSR' REAL ); 2.插入数据 INSERT INTO t_journey(title,content,GPSL,GPSR) VALUES('aaa','bbbb',22.00,33.00); 3.更新数据 UPDATE t_journey SET title = 'eeee' & changeTime = datetime('now','localtime') WHERE "index" = 1