
备忘
文章平均质量分 60
Micheal_Xiao
如果你感到辛苦,那是因为你走在上坡路上。
展开
-
IOS--备忘,获取外网IP
对于数据收集,外网IP是必须获取到的,看了很多资料,有些已过期,有些只能获取移动网络的IP,对于WiFi的就只能获取到局域网的IP,但是,这些都不是我想要的呀。终于,找到了可用的URL地址,就是利用搜狐的网址来弄的,代码如下://获得外网IP- (NSString *)ip{ return [self deviceWANIPAdress][@"cip"];}-(NSDictio原创 2016-09-08 10:51:26 · 1321 阅读 · 2 评论 -
iOS --iap内购的那些小事
最近,游戏SDK要集成iap内购,那好吧,功能实现了。没想到研发接入测试的时候反馈,苹果iap内购弹窗太慢,用户可以多次点击不同的选项。。。哎,也是,苹果服务器在美国呢,从调起支付到弹出支付界面要3秒左右,用户以为没反应,多点几次也是有的嘛(虽然不会重复支付,但是体验不好啊,对于我来说绝对不能忍)。那么怎么办呢?加遮盖?肯定是第一个想法,但是我不想这么做(就是这么任性!)好了,方法就是忽略点击事件原创 2016-09-02 10:51:53 · 1743 阅读 · 1 评论 -
IOS--备忘 常用的宏
IOS开发中常用的宏,做下记录,备忘下。1、设置view的圆角边框#define LRViewBorderRadius(View, Radius, Width, Color)\[View.layer setCornerRadius:(Radius)];\[View.layer setMasksToBounds:YES];\[View.layer setBorderWidth:(Wid原创 2016-09-09 18:10:15 · 380 阅读 · 0 评论 -
工作备忘--设置任意控件任意位置的圆角
关键代码如下: self.exitBtn.layer.masksToBounds =YES; CAShapeLayer *maskLayer = [CAShapeLayerlayer]; maskLayer.path = [UIBezierPathbezierPathWithRoundedRect:self.exitBtn.boun原创 2016-05-04 12:11:03 · 334 阅读 · 0 评论 -
工作备忘-位移枚举
开发中,我们经常看到很多的位移枚举,一般来说,见到位移枚举,我们都是可以写多个的,用 | 来隔开,就能识别。其实按照习惯的惯例,我们通常看到枚举,看不懂,就写个0,其实这样不好,还是要理解一下枚举的内容,是不是我们想要的那么我们来模拟一下,看位移枚举,究竟是个什么东西自定义一个枚举根据位移的常识,我们得出了偏移后的数值typedef NS_OPTIONS(NSUIn原创 2016-04-11 16:50:18 · 290 阅读 · 0 评论 -
工作备忘——iOS 获取Assets.xcassets中APPIcon中的图片
获取Assets.xcassets中APPIcon中的图片" title="iOS 获取Assets.xcassets中APPIcon中的图片" style="margin:0px; padding:0px; border:0px; list-style:none">精华在这里: NSDictionary *infoPlist = [[NSBundle main原创 2016-04-14 11:35:27 · 2827 阅读 · 0 评论 -
工作备忘-添加Xcode插件不小心跳过了 还怎么添加?
步骤如下:查看Xcode的UUID在终端执行 defaults read /Applications/Xcode.app/Contents/Info DVTPlugInCompatibilityUUID复制UUID后面那一串字符串然后打开xcode插件所在的目录:~/Library/Application Support/Developer/Shared/Xcode/Plug-in原创 2016-03-16 16:51:11 · 568 阅读 · 0 评论 -
工作总结-小技能提高你的编码效率
模拟器上按option键模拟两根手指时, 并非只能在屏幕中间, 你可以按住option + shift同时拖动鼠标, 就可以将两根手指间的控制点偏移, 比我之前先把控件放到屏幕中间再调试手势容易多了想要在xib或者storyboard里面复制一个控件?选中控件直接command + d吧,至少比command+c与command+v节省一半时间吧?还是IB里面,设置约束原创 2015-11-25 17:20:14 · 308 阅读 · 0 评论 -
工作备忘-在xib/storyboard里面设置view圆角半径
想给视图设置圆角,常用的做法是将IB中的控件拖线到控制器,然后设置其圆角半径,以UIImageView为例,默认的UIImageView是矩形:未处理的ImageView我们想将这个imageView裁成一个圆形的头像,使用代码的设置方法如下:self.imageView.layer.cornerRadius = 50.f;self.imageView.lay原创 2015-11-25 17:05:55 · 414 阅读 · 0 评论 -
工作备忘-设置Log日志打印开关
在制作SDK时,经常要打印日志调试,但是发布时又不想要打印日志(十分消耗性能),并且将制作好得SDK交给他人使用时,为了给予他人良好的用户体验,设置打印Log日志开关就十分有必要了。首先:// 项目打包发布上线不会打印日志,可放心。#ifdef DEBUG#define DebugLog(s, ... ) NSLog( @"[%@:in line: %d]-->[message: %@]",原创 2015-11-18 09:57:13 · 1121 阅读 · 0 评论 -
工作备忘-获得游戏在线时长
//创建通知监听(判断游戏时长) [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(applicationWillResignActive:) name:UIApplicationWillResignActiveNotification object:nil]; //监听是否触发hom原创 2015-10-14 11:55:02 · 449 阅读 · 0 评论 -
工作备忘-Xcode7禁用了明码的HTTP请求
Xcode7禁用了明码的HTTP请求,苹果将原http协议改成了https协议,使用 TLS1.2 SSL加密请求数据。会出现以下error:Application Transport Security has blocked a cleartext HTTP (http://) resource load since it is insecure. Temporary excep原创 2015-09-25 10:09:45 · 410 阅读 · 0 评论 -
工作备忘-钥匙串存储UUID和账号密码
网上很多关于获取UUID和钥匙串存储的资料,但大部分都只是模拟器上可行,真机却跑不了。在自己的摸索和网友的帮助下,终于解决了这个问题,下面做下记录,以备查阅。链接: http://pan.baidu.com/s/1gdwesOr 密码: z97t原创 2015-11-13 17:34:08 · 542 阅读 · 0 评论 -
工作备忘-Xcode添加静态库以及编译选项配置常见问题
一、Undefined symbols for architecture x86_64: "_SCNetworkReachabilityCreateWithAddress", referenced from: +[AFNetworkReachabilityManager managerForAddress:] in libsdktest.a(AFNetworkReachabilityManag原创 2015-10-08 17:18:59 · 580 阅读 · 0 评论 -
工作备忘-ios应用安全防护oc源代码混淆,防止class-dump攻击
一般大家都认为iOS很安全,至少比安卓安全。的确,iOS底层是基于编译型的C语言,而安卓是基于解释型的Java,iOS难以反编译。但也不是说iOS就不能反编译,当然你得看得懂汇编。比如一些收费反编译软件如:ida pro,就可以可以轻松将二进制程序转换成源码,包括iOS和android平台常见的.so文件、.a 静态库、.o文件、framework、 App等二进制文件,而免费软件如:class-dump可以很方便的导出程序头文件,让攻击者了解了程序结构方便逆向,所以,混淆自己的代码十分必要。原创 2015-10-22 11:43:35 · 4769 阅读 · 0 评论 -
工作备忘-ios中oc枚举值与字符串之间的转换
在工作中,枚举类型的使用优势没啥好说的。但经常需要将它与字串进行转换方便显示或其它需求。可惜原生的枚举值只能是int常量,并不支持字符串,我们只能自己对枚举值进行转换,一般有两种方案:方案1中,多是先声明,然后在实现文件里创建一个映射表。这样带来的问题就是要分两个文件来管理,带来管理不方便不好。使用前还在确保映射表已经初始化。显然使用时还是有些许难受。如果全部改用宏来实现则会好管理很多,而且对于映射表可以采用惰性初始化原则,即只有访问到时才创建。这就是方案2,也是这篇博客的重点。原创 2015-10-20 17:56:56 · 7144 阅读 · 0 评论 -
工作备忘-制作Framework所用shell脚本代码
Framework本身就是静态库加上一组头文件——实际上正是已经创建好的东西(还没就先制作.a静态库)。一个framework有一个特殊的目录结构,看起来像是这样的:现在需要在静态库构建过程中添加脚本来创建这种结构,在项目导航栏中选择项目,然后在TARGETS选择静态库目标,选择Build Phases栏,然后选择Editor/Add Build Phase/Add原创 2015-10-19 11:08:35 · 733 阅读 · 0 评论 -
php——水印
很多开发语言都会实现水印功能,之前我用OC和swift都实现过,最近学下php,顺便练下手,记录下以便查阅。<?php //水印function water($source,$water = '1_jaccty.png',$position = 0,$alpha = 100,$type = "jpeg",$path = 'waterTest',$isRandName = true){原创 2017-07-30 21:11:06 · 325 阅读 · 0 评论