需求驱动技术,有了新的需求,旧技术无法实现时,就会有新的技术出现. 一般的APP跳转需求有以下几种: 1.  从自己的APP跳转到别人的APP. 2. 从自己的APP跳转系统APP. 3. 让别人的APP调起自己的APP. 这三种跳转的常见操作参考 iOS URL Schemes实现APP之间的跳转 这些是旧的需求,上面一篇文章基本可以涵盖. 在此基础上有了新的需求,基于第二条需求:“从自己的APP跳转系统APP”.升级为从自己的APP打开Safari而不刷新页面. 我们都知道(从上面的文章里也…
今天在做一个音乐播放器的项目,发现这个点击退出程序的功能不能实现终于找到了一些有用的资料,就去网上看了半天资料,下面是退出程序的代码: 在动画里面可以自己添加一些,动画,达到相应的效果. AppDelegate *app = [UIApplication sharedApplication].delegate; UIWindow *window = app.window; [UIView animateWithDuration:1.0f animations:^{ window.alpha =…
1.前言 iOS 系统是相对封闭的系统,App 各自在各自的沙盒(sandbox)中运行,每个 App 都只能读取 iPhone 上 iOS 系统为该应用程序程序创建的文件夹 AppData 下的内容,不能随意跨越自己的沙盒去访问别的 App 沙盒中的内容. 所以 iOS 的系统中进行 App 间通信的方式也比较固定,常见的 App 间通信方式以及使用场景总结如下. 2.URL Scheme URL 协议 这个是 iOS App 通信最常用到的通信方式,App1 通过 openURL 的方法跳转…
上篇博客<iOS逆向工程之KeyChain与Snoop-it>中已经提到了,App间的数据共享可以使用KeyChian来实现.本篇博客就实战一下呢.开门见山,本篇博客会封装一个登录用的SDK, 该登录SDK中包括登录.注册.忘记密码等功能,当然该SDK中包括这些功能的UI.数据验证等业务逻辑.网络请求.数据存储等等.当然此处的登录SDK是一个简化版的,真正的登录SDK比这个考虑的东西要多的多,如果在加上多个App进行登录账号的共享的话,那么考虑的东西就更为复杂了. 本篇博客就先封装一个Logi…
iOS开发过程中,我们经常碰到应用间跳转的情景: 1.使用第三方用户登录,跳转到需授权的App或跳转到分享app的对应页面 *需要用户授权,还需要"返回到调用的程序,同时返回授权的用户名.密码": 2.应用程序推广,跳转到另一个应用程序(本机已经安装): 3.跳转到iTunes并显示应用程序下载页面(本机没有安装): 4.第三方支付,跳转到第三方支付App,如支付宝支付,微信支付: 5.使用系统内置程序,如跳转到打电话.发短信.发邮件.Safari等 应用间跳转原理:若应用A跳转到应用…
预习:URL由两部分组成-- 1.scheme:协议头(http://  ftp:// 等等) 2.path:路径(URL中path可以没有) 一.简单实现跳转到指定APP(也就是说跳转到的APP必须有自己的URL) -- 测试APP跳转到wechatAPP 设置APP的URL 在测试APP中点击按钮实现跳转到微信APP                                                                          二.实现跳转到制定页面(控制器…
A-app: Info--URL Types--URL Schemes:A-app(一个标识,允许别的app调用本App) info.plist 添加白名单: LSApplicationQueriesSchemes(Array) B-app(String) //使用 - (void)jumpToBapp { UIPasteboard *pasteboard = [UIPasteboard generalPasteboard]; pasteboard.image = [UIImage imageN…
代码地址如下:http://www.demodashi.com/demo/12748.html 简介: URL Scheme就是一个可以让app相互之间可以跳转的对外接口.通过给APP定义一个唯一的URL路径来从外部快速的打开这个指定的APP,每个app的URL Scheme都是不一样的,如果存在一样的URL Scheme,那么系统就会响应先安装那个app的URL Scheme,因为后安装的app的URL Scheme被覆盖掉了,是不能被调用的. 应用: 第三方分享的SDK就是通过这种方式来实现…
tags: iOS 8,Swift,App Groups 随着 iOS 8 的发布,苹果为广大开发者很多新的 API,其中最突出显著的就非 App Extension 莫属了.这为开发者们又带来了很多机会. 而我们在开发 App Extension 的时候,基本大多数人都会遇到这样一个问题.就是由于 App Store 的规则是 App Extension 不能独立的发布,而是要跟随一个宿主应用一起发布. 比如奇妙清单: 我们看到,通过 App 扩展,奇妙清单将主 App 的任务数据显示到了通知…
https://www.jianshu.com/p/d640ccfcea5f 1: URL Scheme 常用的App间传值方式.常见于分享等. 2: Keychain  借助系统类 KeychainItemWrapper来使用.常见于免登陆 (同公司产品间) 3: UIPasteboard 粘贴板.      淘宝的链接分享. 4: UIDocumentInteractionController 常用于文件的分享 5: local socket.…
Navigating Up with the App Icon Enabling the app icon as an Up button allows the user to navigate your app based on the hierarchical relationships between screens. For instance, if screen A displays a list of items, and selecting an item leads to scr…
IOS开发效率之为Xcode添加常用的代码片段 原文地址:http://blog.csdn.net/pingchangtan367/article/details/30041285 tableview是我们经常使用的控件,而使用tableview控件需要自己去实现一些基本的tableview的代理.这些对于每个程序基本上都是大同小异.对于声明property来说也是我们经常需要做的工作.所以我们需要把这些公用的东西总结成代码块,供我们以后的快捷使用. 具体步骤如下: 1.将我们需要重复使用的代码…
iOS开发CoreAnimation解读之三——几种常用Layer的使用解析 一.CAEmitterLayer 二.CAGradientLayer 三.CAReplicatorLayer 四.CAShapeLayer 五.CATextLayer iOS开发CoreAnimation解读之三——几种常用Layer的使用解析 一.CAEmitterLayer CAEmitterLayer是CoreAnimation框架中的粒子发射层,在以前的一片博客中有详细的介绍和范例,这里不再重复,地址如下: 粒…
在虚拟主机环境中,基本上都是Apache环境.Apache的伪静态的设置,都是在网站根目录设置.htaccess文件,在.htaccess文件中无论是伪静态, 还是301跳转,甚至是防盗链和禁止某个IP的访问都可以很简单的设置. 关于.htaccess文件的设置和实际应用是相当广泛的,很多功能都可以利用这个小小的文件实现,只不过我们普通用户使用的并不多而已,比如我们常用的301跳转就医带WWW的二级域名跳向不带WWW的顶级域名, 或者一防盗链,或是禁止IP等.这篇文章我们就介绍几种,.htacc…
apache环境.htaccess设置301跳转及常用.htaccess技巧整理 无论是Nginx,还是Apache都各自有优势,对于我们普通用户而言基本上也没有多大的区别.在虚拟主机环境中,基本上都是Apache环境.Apache与Nginx两者区别之一就是伪静态的设置,前者则是在网站根目录设置.htaccess文件,无论是伪静态,还是301跳转,甚至是防盗链和禁止某个IP的访问都可以很简单的设置. Apache环境.htaccess设置301跳转及常用.htaccess技巧整理 关于.hta…
Testin实验室:陌陌APP通过率为94.92% 基本满足移动社交需求 2014/11/10 · Testin · 独家评測 11月8日,国内移动社交应用陌陌公开向美国证券交易委员会提交了IPO申请,计划在纳斯达克交易所挂牌上市.股票代码为"MOMO".此次IPO估计将募集3亿美元资金,估值达到30亿美元.摩根士丹利.瑞士信贷.摩根大通和华兴资本担任此次IPO的承销商. 作为自称"中国排名第三"的社交类APP.适配測试,功能測试.用户体验測试,性能測试.稳定性測试…
已经掌握了CALayer下的CATransition动画在同一个控制器下实现,但是在不同控制器间跳转又该如何实现呢? MyViewController *myVC = [[MyViewController alloc]init]; //创建动画 CATransition *animation = [CATransition animation]; //设置运动轨迹的速度 animation.timingFunction = UIViewAnimationCurveEaseInOut; //设置动…
*此文章需有一点runtime的知识,假设你不了解runtime,<高速理解Runtime of Objective-C>: http://mp.weixin.qq.com/s?__biz=MzIxNDI0OTAzOQ==&mid=403005635&idx=1&sn=71375cb0dee51487c90087d488ff59fe#rd 问题: 一个app通常由很多个模块组成,全部模块之间免不了会相互调用,比如一个读书管理软件,可能会有书架.用户信息.图书详情等等模块…
一.GCD的基本使用 <1>GCD简介 什么是GCD 全称是Grand Central Dispatch,可译为“牛逼的中枢调度器” 纯C语言,提供了非常多强大的函数   GCD的优势 GCD是苹果公司为多核的并行运算提出的解决方案 GCD会自动利用更多的CPU内核(比如双核.四核) GCD会自动管理线程的生命周期(创建线程.调度任务.销毁线程) 程序员只需要告诉GCD想要执行什么任务,不需要编写任何线程管理代码 <2>GCD的使用 GCD的使用就2个步骤 定制任务 确定想做的事情…
常常使用Safari浏览器浏览网页点击url会唤醒该站点的手机版app 须要在app的project中设置 1.打开project中的myapp-Info.plist文件 2.打开文件里新增URL TYPES的一项.详细例如以下图所看到的: 3.在project中实现例如以下方法 - (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url { if (url) { UIAlertView *alertVi…
1.URL Scheme 2.Keychain 3.UIPasteboard剪切板 4.UIDocumentInteractionController 5.local socket 详见: 转自:https://www.jianshu.com/p/d640ccfcea5f…
在iOS开发中遇到的控制器间的数据传递主要有两种情况:顺传递与逆传递.顺传递是指数据的传递方向和控制器的跳转方向相同(如图1):逆传递是指数据的传递方向和控制器的跳转方向相反(如图2).这里分别介绍这两种传递方式的具体做法. 顺传递 如果是用的SB,顺传递较简单,只需在A控制器的prepareForSegue:sender:方法中根据segue参数取得destinationViewController,也就是目标控制器C,直接给控制器C传递数据.从A传来的数据要在C的viewDidLoad方法中…
我们知道iOS由于沙盒的存在,应用程序不能越过自己的区域去访问别的存储空间的内容,不过可能有许多场景我们需要在应用程序之间共享数据,比如多个应用共用用户名密码进行登录等.虽然我们不能直接通过文件系统来分享数据,不过还是有些方法可以实现,为了方便说明,这里同时创建了两个工程send和receive,实现这两个app之间的信息共享,send负责写数据,receive负责读数据,具体的demo代码可以到这里获取 UIPasteboard 剪贴板是应用程序之间传递数据的简单方式,建议不要使用全局的粘贴板…
本文转自:http://www.cnblogs.com/imzzk/p/firim.html 一次很偶然的机会知道fir.im,这家公司主要的产品就是帮助开发者方便便捷地发布iOS或者Android应用的.今天我就聊聊如何在FIR.im中发布自己的APP,然后让加入UUID的设备通过网页直接下载安装.这样做的好处就是不用傻呵呵的每次插入USB,通过XCode去生成APP啦.毕竟有时候带根线是挺麻烦的事情,最关键的是团队成员一多,你总不能把设备一个个拿过来去更新,多么笨拙的事情啊.所以我觉得FIR…
http://www.code4app.com 这网站不错,收集各种 iOS App 开发可以用到的代码示例  http://www.cocoacontrols.com/ 英文版本的lib收集  http://www.objclibs.com/ 精品lib的收集网站  http://www.ityran.com/forum-61-1.html 泰然代码仓库 ---------------------- emoji ----------------------  http://www.easyap…
上图 : 在plist文件里面设置. URL identifier 一般为反域名+项目名称 (尽可能保证少重复) URL Schemes是一个数组.一个APP可以添加多个.该参数为跳转时使用的标识. 1:跳转safari比较简单 NSString *iTunesLink = @"http://www.xxxx.com"; [[UIApplication sharedApplication] openURL:[NSURL URLWithString:iTunesLink]]; 2:跳转回…
<!----iOS> <!----Swift>*IOS开发常用社区:http://code4app.com/ *IOS开发常用社区:http://www.cocoachina.com/*IOS开发常用社区: http://www.oschina.net/*IOS开发常用社区:http://www.cnblogs.com/ *IOS开发常用社区:http://www.csdn.net/ *IOS开发常用社区:http://www.51cto.com/   *IOS开发常用社区:htt…
Ios沙盒目录清单 1 Documents 用于存储用户生成的文件.其他数据及其他程序不能重新创建的文件,默认文件通过iCloud自动备份.如果不需要iCloud备份,则设置标记 NSURLIsExcludedFromBackupKey,注明不备份 1.1 读取Documents目录代码 NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSStrin…
运行时常用 什么是Runtime(前面的文章已经说的很清楚了,这里就简单的介绍一下) 我们写的代码在程序运行过程中都会被转化成runtime的C代码执行,例如[target doSomething];会被转化成objc_msgSend(target, @selector(doSomething));. OC中一切都被设计成了对象,我们都知道一个类被初始化成一个实例,这个实例是一个对象.实际上一个类本质上也是一个对象,在runtime中用结构体表示. 相关的定义: /// 描述类中的一个方法 ty…
在项目开发中,常常会涉及到对象之间的通信,而为了降低对象间的耦合,会采用delegate.notificationCenter.block三种方式来进行实现,对于他们的使用,也许大家都能熟练掌握,但是对于如何创建,初学者也许只是一知半解,本文不讲长篇大论,仅通过简单的实例来帮助大家学习三者的使用,希望对尚不了解以上三者的朋友能带来一定的帮助. 一.delegate 估计大家最常用的delegate就是UITableViewDelegate了,那么我们如何自己写一个代理呢?我们常常会在控制器中监听…