一. 为什么要写这篇文章? 这是一个很古老的话题,从两年前新浪微博开始使用多层动画制作iOS App的启动引导页让人眼前一亮(当然,微博是不是历史第一个这个问题值得商榷)之后,各种类型的引导页层出不穷,到如今,github上也有了各种的成型的library存在供选择,同时不少app也已经慢慢的开始返璞归真回归单一静态引导页.虽然时尚的潮流不停的在变化,但是我一直在思索,这种多图层的启动引导动画到底是什么个结构?实现起来究竟有多难?本文,将试图探寻这个话题. 二. 我们要做成什么样子的? 首先定下…
(Android+IOS)我们正在做一个新闻App,做几乎一样的,倾听您的建议! 新闻采访是做,前端展示APP界面感觉还不是非常好,还须要改进改进,希望公布(Android和IOS版本号)前听听大家的建议! watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdGVuZ3l1bmppYXd1X2NvbQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast"…
(Android+IOS)正在做一个新闻App,做的差不多了,听听大家的建议! 新闻采集器做好了,前端展示APP界面感觉还不是很好,还需要改进改进,希望发布(Android和IOS版本)前听听大家的建议! 新闻采集器做好了,前端展示APP界面感觉还不是很好,还需要改进改进,希望发布前听听大家的建议!…
iOS app 程序启动原理 Info.plist: 常见设置     建立一个工程后,会在Supporting files文件夹下看到一个"工程名-Info.plist"的文件,该文件对工程做一些运行期的配置,非常重要,不能删除.     在旧版Xcode创建的工程中,这个配置文件的名字叫做"Info.plist".     项目中的其他plist文件不能带有"Info"这个字眼,不然会被错认为是传说中非常重要的"Info.plist…
诚然,React Native 结合了 Web 应用和 Native 应用的优势,可以使用 JavaScript 来开发 iOS 和 Android 原生应用.在 JavaScript 中用 React 抽象操作系统原生的 UI 组件,代替 DOM 元素来渲染等. React Native 使你能够使用基于 JavaScript 和 React 一致的开发体验在本地平台上构建世界一流的应用程序体验.React Native 把重点放在所有开发人员关心的平台的开发效率上--开发者只需学习一种语言就…
一.mach-O Executable 可执行文件 Dylib 动态库 Bundle 无法被连接的动态库,只能通过 dlopen() 加载 Image 指的是 Executable,Dylib 或者 Bundle 的一种. Framework 动态库和对应的头文件和资源文件的集合 Apple 出品的操作系统的可执行文件格式几乎都是 mach-O. mach-O 可以大致分为三部分: Header 头部,包含可以执行的 CPU 架构,比如 x86,arm64 Load commands 加载命令,…
前两部分,<如何用 React Native 创建一个iOS APP?>,<如何用 React Native 创建一个iOS APP (二)?>中,我们分别讲了用 React Native 来创建 Navigation Bar,Tab Bar 等这些控件,今天在第三节,我们着重讲一下剩下的一些控件.闲话少叙,我们直入主题! 添加一个ListView React Native 有一个叫做 ListView 的组件,可以显示滚动的行数据,基本上是 ios 项目上的一个术语表视图. 首先…
MUI框架-05-用MUI做一个简单App MUI 是一个前端框架,前端框架就像 Bootstrap,EasyUI,Vue ,为了做 app 呢,就有了更加高效的 MUI,我觉得前端框架有很多,也没有必要都取掌握,找一个比较出名的,企业里常言道,适合自己的然后去深入了解 当然呢这也是因为要想快速的下代码,使用框架是避免不了的,使用框架,记住一些操作是必须的,所以熟悉几个框架,然后多去了解多去用,高效是建立在记忆的基础上的 ios 需要证书,本篇介绍做一个简单的安卓 app (1)MUI 组件 有…
我们书接上文<如何用 React Native 创建一个iOS APP?>,继续来讲如何用 React Native 创建一个iOS APP.接下来,我们会涉及到很多控件. 1 AppRegistry.registerComponent( 上述是定义应用程序的入口点.这也是 JavaScript 代码开始执行的地方. 这是一个本地用户界面反应的基本结构.我们定义的每个视图将遵循相同的基本结构. 在本教程中,我们将创建一个既可以浏览书籍又能知道书籍介绍比如作者.标题或关于书籍的简介.你还可以通过…
前言 俗话说得好, 万事开头难. 仅仅是上图一个如此简单地不能再简单的小app, 其实都不算是app, 只是注入了一段代码进系统中, 等到特定的函数方法调用的时候就会被我们hook掉, 执行我们写的代码, 仅此而已. 哈哈, 就是这样一个小功能, 搞得我焦头烂额了一个晚上, 所以大家不用害怕, 连我这样的菜鸟都能实现, 大家只要认真看我的总结, 就一定可以自己也动手在自己越狱iPhone, iPad上嗨起来! ps : 为了纪念这神圣的一刻, 就算是这么简单的程序我也把它放到了我的Github上…
UIApplication 程序启动原理 一个应用程序运行就必须要有一个进程,一个进程至少要有一个线程,我们把这个线程叫做主线程,主线程开启之后会开启一个主运行循环,如果不开启一个运行循环,程序开启了就马上结束了,不会一直运行.换句话来说一个APP开启就关闭了,所以必须开启一个死循环,不断的在监听事件,用户操作....等等一些事件,说完那就来看看程序怎么启动的. 一个app用程序启动就必须要有且仅有一个UIApplication(或则其子类)应用管理类,UIApplication 这个类的对象是…
在上一节,我们完成了一个项目搭建,我们看到的是一个项目的分层架子,那接下来每一层做什么以及需要引用哪些内容呢?在本节内容我们还逐步拆分每一层的功能,顺带添加package包 Trump.Domain 在这一层,主要是定义领域模型,我们前面也说,Domain是不依赖任何层的,唯一可能存在的依赖也就是外部的帮助类库了.所以这一层不需要我们进行单独处理引用关系的. 在这一层我们主要定义一些实体和实体的行为,为了解决方案树看着清爽一些,我们分别添加几个文件夹保存对应的内容 Entiies:保存实体类 I…
To create my first app in iOS create the project. In the welcome window, click “Create a new Xcode project” (or choose File > New > Project). Xcode opens a new window and displays a dialog in which you choose a template. In the iOS section at the le…
增长.活跃.留存是移动 App 的常见核心指标,直接反映一款 App 甚至一个互联网公司运行的健康程度和发展动能.启动流程的体验决定了用户的第一印象,在一定程度上影响了用户活跃度和留存率.因此,确保启动流程的良好体验至关重要. 「马蜂窝旅游」App 是马蜂窝为用户提供服务的主要阵地,其承载的业务模块不断丰富和完善,产品功能日趋复杂,已经逐渐成长为一个集合旅行信息.出行决策.自由行产品及服务交易的一站式移动平台. 「马蜂窝旅游」iOS App 历经几十个版本的开发迭代,在启动流程上积累了一定的技术…
原文:http://www.raywenderlich.com/2941/how-to-write-a-simple-phpmysql-web-service-for-an-ios-app 作为一个iPhone/iPad开发者,能够自己写一个简单的web服务器将是很有用的. 例如,你可能希望在软件启动时显示一些来自服务器的更新,或者在服务器端保存一些用户数据.除了你的想象力,没有什么能限制你了. 在第一篇中,我们将会一步一步的建立一个web服务器,基于promo code system(促销码系…
现今,直播市场热火朝天,不少人喜欢在手机端安装各类直播 App,便于随时随地观看直播或者自己当主播.作为开发者来说,搭建一个稳定性强.延迟率低.可用性强的直播平台,需要考虑到部署视频源.搭建聊天室.优化界面等难题,具备一定的难度与挑战! 那假如自己搭建一个直播平台,该如何下手呢?莫慌,本文就给大家详细介绍如何搭建一个 iOS 系统的直播 App? 1 流程熟悉 1.1 选择协议 想要实现直播 App ,我们得先知道如何播放从服务器传来的视频数据. 目前,主流视频直播网站使用的协议多为 RTMP(…
一.在一些老的项目中,有很多不是通过代码添加窗口和跟控制器.是通过设置MainInterface(设置最主要的xib),在xib中通过图形化的操作设置应用程序的代理->设置窗口->设置根控制器->设置跟控制器的view. 这种方式的启动过程:执行Main函数就会加载MainXib文件,并把UIApplication对象当做owner传入. 二.设置了Mainstoryboard(这种方式目前项目中很少用到,很多公司禁止使用storyboard) 1.先执行main函数,main内部会调用…
设想下:如果让你重新做一款 APP ,你会用到哪些开发.设计等资源和工具? 本期的 Weekly 为大家分享了最近不错的 APP 开发资源,大部分是关于 iOS 开发. Android 开发.UI设计相关,大家可各取所需. 27个提升效率的iOS开源库推荐 作者@Yash Jhunjhunwala 根据自己的喜好选取了一些能够大幅提升开发效率的iOS开源库,包括DZNEmptyDataSet.PDTSimpleCalendar.MagicalRecord.Alamofire等,绝大多数支持 Co…
之前我帮某公司做的一个iOS app,升级的时候发现闪退问题.后来检查是因为升级的时候数据库出现一点小问题导致对象为空. 下面这个代码可以检测程序是否更新了,从而进行相关处理: 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 // 首先获得目前运行版本的数值,例如:1.1.2   NSString *currentAppVersion =   [[[NSBundle mainBundle] infoD…
写一个TODO App学习Flutter本地存储工具Moor Flutter的数据库存储, 官方文档: https://flutter.dev/docs/cookbook/persistence/sqlite 中写的是直接操纵SQLite数据库的方法. 有没有什么package可以像Android的Room一样, 帮助开发者更加方便地做数据库存储呢? Moor就是这种目的: https://pub.dev/packages/moor. 它的名字是把Room反过来. 它是一个第三方的package…
缘起 想做一个笑话App的原因是因为在知乎上看过一个帖子,做Android可以有哪些数据可以练手,里面推荐了几个数据开放平台.在这些平台中无一不是有公共的笑话接口,当时心想这个可以拿来练手啊,还挺有意思的,估计还能积累一点用户. 碰巧(真的好巧)在Github中遇到了一个MVP设计模式的框架Beam,作者Jude95有一个笑话仓库----Joy(豆逼),就是一个做笑话的!更巧的是用到的接口也是我在关注的接口,心想不如改造一下吧,做个升级版,自己也可以在这个中学到别人是怎么写App的.后来发现这是…
公司开发了一个平台,手机网站已经做出来了,想开发一个苹果应用app,但公司没人会IOS开发,为了减小成本,现在想直接做一个壳来加载手机网站,请问在ios中复杂吗?是否有相应的控件直接加载url就行? 答1不复杂,使用uiwebview就可以了.但如果在这个手机网站中需要调用手机的拍照功能,以及需要oc调用js,或js调用oc等行为的话,就需要另写代码来处理了. 答2如果只做越狱的 话 那就另说了 肯定OK 如果上架 100%没戏 答3其实也可以,但你这种情况不需要那样整,我们公司就有这样的接口,…
本文由CocoaChina--不再犹豫(tao200610704@126.com)翻译 作者:@NIkant Vohra 原文:7 Things you must absolutely do before writing an iOS app 这两年,我一直在编写并发布有质量的iOS 应用.我发现大多数的开发人员有直接跳进编码应用程序的核心逻辑的倾向,因为这是乐趣所在.遵循流程开发是很无聊的. 我了解到最有效的方式是,如果你提前花些时间正确设置项目,你将会为将来节省大量的时间.如果你是一位独立开…
程序启动之前 从exec()开始 main()函数是整个程序的入口,在程序启动之前,系统会调用exec()函数.在Unix中exec和system的不同在于,system是用shell来调用程序,相当于fork+exec+waitpid,fork 函数创建子进程后通常都会调用 exec 函数来执行一个新程序:而exec是直接让你的程序代替原来的程序运行. system 是在单独的进程中执行命令,完了还会回到你的程序中.而exec函数是直接在你的进程中执行新的程序,新的程序会把你的程序覆盖,除非调…
网上也有讲这块的,感觉讲得都不是很好.而且有一些细节根本没有讲清楚.这里重写整理一下相关知识点. 主要内容 URL Scheme 是什么? 项目中关键的配置 注意事项 URL Scheme 是什么? iOS有个特性就是应用将其自身”绑定”到一个自定义 URL scheme 上,该 scheme用于从浏览器或其他应用中启动本应用.常见的分享到第三方之间的跳转都是基于Scheme的. 通过对比网页链接来理解iOS 上的 URL Schemes,应该就容易多了. URL,我们都很清楚,http://w…
转自:http://www.cocoachina.com/ios/20160316/15687.html 本文由CocoaChina--不再犹豫(tao200610704@126.com)翻译 作者:@NIkant Vohra 原文:7 Things you must absolutely do before writing an iOS app 这两年,我一直在编写并发布有质量的iOS 应用.我发现大多数的开发人员有直接跳进编码应用程序的核心逻辑的倾向,因为这是乐趣所在.遵循流程开发是很无聊的…
1. App启动过程 解析Info.plist 加载相关信息,例如如闪屏 沙箱建立.权限检查 Mach-O加载 如果是胖二进制文件,寻找合适当前CPU类别的部分 加载所有依赖的Mach-O文件(递归调用Mach-O加载的方法) 定位内部.外部指针引用,例如字符串.函数等 执行声明为__attribute__((constructor))的C函数 加载类扩展(Category)中的方法 C++静态对象加载.调用ObjC的 +load 函数 程序执行 调用main() 调用UIApplication…
本文由CocoaChina--不再犹豫(tao200610704@126.com)翻译 作者:@NIkant Vohra 原文:7 Things you must absolutely do before writing an iOS app 这两年,我一直在编写并发布有质量的iOS 应用.我发现大多数的开发人员有直接跳进编码应用程序的核心逻辑的倾向,因为这是乐趣所在.遵循流程开发是很无聊的. 我了解到最有效的方式是,如果你提前花些时间正确设置项目,你将会为将来节省大量的时间.如果你是一位独立开…
前言 有点零乱,但是我想写下来慢慢整理,搭建一个好点的工程-模式MVC, 会包括一些第三方库,动画库,第三方库管理关联,自定义常用控件的管理和关联 1.预编译文件的创建 在build setting 搜索Prefix Header将里面的空白路径改为 $(SRCROOT)/xxxxxxxx(你的工程名字)/PrefixHeader.pch 其中PrefixHeader是你自己创建的pch文件 文件里一般会添加两个框架: #ifndef Carloans_PrefixHeader_pch #def…
Info.plist和pch文件的作用 建立一个project后,会在Supporting files目录下看到一个"project名-Info.plist"的文件,该文件对project做一些执行期的配置.很重要,不能删除 在旧版本号Xcode创建的project中.这个配置文件的名字就叫"Info.plist" 项目中其它Plist文件不能带有"Info"这个字眼,不然会被错觉得是传说中很重要的"Info.plist" 项…