Qin Ken logo

Qin Ken

Qin Ken的blog


  • Blog
  • Projects
  • Github
  • Twitter
  • RSS
  • Email
  1. 隐私政策

    ​ 光谷社区尊重并保护所有使用服务用户的个人隐私权。为了给您提供更准确、更有个性化的服务,光谷社区会按照本隐私权政策的规定使用和披露您的个人信息。但光谷社区将以高度的勤勉、审慎义务对待这些信息。除本隐私权政策另有规定外,在未征得您事先许可的情况下,光谷社区不会将这些信息对外披露或向第三方提供。光谷社区会不时更新本隐私权政策。 您在同意光谷社区服务使用协议之时,即视为您已经同意本隐私权政策全部内容。本隐私权政策属于光谷社区服务使用协议不可分割的一部分。 适用范围(a) 在您注册光谷社区帐号...…

    2020-04-16 • 继续阅读

  2. iOS原生工程嵌入flutter多实例研究

    背景​ 随着跨平台开发越来越流行,flutter的横空出世,给很多人在h5、rect native之外的另一种选择。由于h5和rect native都存在着性能的问题,而谷歌开始推出flutter时宣传性能出众,更贴近原生,于是便想着用现有的iOS工程嵌入flutter,来看看效果。以下是对flutter的一些研究。嵌入Flutter1、官方嵌入方法​ 官方提供的嵌入方法是基本引入的pod工程,详细情况可看教程https://github.com/flutter/flutter/wiki/...…

    2019-11-05 • 继续阅读

  3. 网页在iOS12键盘隐藏时视图发生偏移

    背景  在iOS系统中会经常嵌入网页,在键盘输入的时候为了不遮挡键盘为使视图居中显示。但在此时在不同版本系统下或者使用不同的WebView(UIWebView或者WKWebView),会造成一些视图的偏移问题,以下介绍的是其中一个问题。问题描述  在iOS12系统下,使用WKWebView,并把该WKWebView的scrollview的contentInsetAdjustmentBehavior设置为UIScrollViewContentInsetAdjustmentNever。这一操作...…

    2018-10-10 • 继续阅读

  4. iOS本地js文件加密

    背景  app本地网页文件一般情况下会选择对js进行混淆加密,但混淆加密只是对js文件中的内容进行的混淆,在一定程度上还是可以还原出来。现在介绍另外一种加密方式,虽说此种加密方式也不完全不能还原出来,但可以尽量减少性能影响的情况下提高解密难度。  此种方式Android和iOS两种平台都可使用,只存在少量差别,总体思路一样。加密方式详解重定向js文件  常规的混淆加密方式只是对字符串进行了混淆,但如果在浏览器中调试仍然可以看清网页执行的来龙去脉。如果我们能够捕获网页所需要加载的js文件...…

    2018-04-16 • 继续阅读

  5. navigationBar的隐藏

    通用方法  一般情况下使用setNavigationBarHidden来隐藏导航栏,但在多个ViewController之间切换时来显示隐藏导航栏,会出现闪动的情况,以下来介绍另外一种方式来隐藏。- (void)setNavigationBarHidden:(BOOL)hidden animated:(BOOL)animated;setTranslucent设置透明———–  函数解释如下@property(nonatomic, assign, getter=isTranslucent) ...…

    2017-10-25 • 继续阅读

  6. Runtime(二)

    Metaprogramming with Properties(获取属性列表)  通过runtime方法获取属性列表:#pragma mark - NSCoding- (id)initWithCoder:(NSCoder *)decoder { self = [super init]; if (!self) { return self; } unsigned int count; objc_property_t *properties = cla...…

    2017-09-04 • 继续阅读

  7. WebView与JS交互(转)

    iOS中调用HTML1、加载网页 NSURL *url = [[NSBundle mainBundle] URLForResource:@"index" withExtension:@"html"]; NSURLRequest *request = [NSURLRequest requestWithURL:url]; [self.webView loadRequest:request];2、删除 NSString *str1 = @"var word ...…

    2017-08-29 • 继续阅读

  8. 越狱环境下查找App沙盒目录

      在iOS开发中,能够随意更改app在真机上的文件可方便我们调试app,但自从iOS9以后app目录也越来越不好获取了。当然首先你得需要一个越狱手机,关于手机如何越狱,以下列出最近几个版本的越狱方法:iOS9.0-iOS9.1盘古官网iOS9.2-iOS9.3.3盘古官网会跳转到pp助手,使用win版pp助手点击一键越狱即可iOS10.0.0-iOS10.2此为越狱源码,开发者可自行下载编译,安装到手机上,然后根据提示来进行越狱  app沙盒目录结构图  下面来展示几种获取app沙盒目录...…

    2017-08-16 • 继续阅读

  9. UIButton的Category

      曾在网上看到过一个这样的文章iOS防止UIButton重复点击的三种实现方式,其中利用runtime来解决问题的思路很高端,但是使用过程中会碰到unrecognized selector sent to instance的问题。下面来解释产生这个问题的原因。  源代码:UIButton+TdxNoRepeatButton.h#import <UIKit/UIKit.h>@interface UIButton (TdxNoRepeatButton)@property (non...…

    2017-08-14 • 继续阅读

  10. iOS静态库中的Category

      一个项目中使用了一个包含 category 的静态库,但是此项目在运行过程中,该静态库调用category增加的方法处,却报selector not recognized异常。产生的原因  苹果官方文档中的这个 Q&A QA1490:Building Objective-C static libraries with categories 已经说明了这个问题产生的原因:  这个异常是因为标准 UNIX 静态库、linker 以及 Objective-C 的动态性三者之间的实现导...…

    2017-08-10 • 继续阅读


1 / 2 更早 →
本站点采用知识共享 署名-非商业性使用-相同方式共享 4.0 国际 许可协议 由 Jekyll 于 2020-04-16 生成,感谢 Digital Ocean 为本站提供稳定的 VPS 服务 本站采用 Vno - Jekyll 作为主题,您可以在 GitHub 找到本站源码 - © 2020