正文为转发整理出处为,用于从浏览器或其余使

2019-09-17 作者:编程   |   浏览(108)

<h4><声明>本文不是原创,本文为转载整理出处为;

审核的参考资料

网上也有讲这块的,感觉讲得都不是很好。而且有一些细节根本没有讲清楚。这里重写整理一下相关知识点。

Core Animation is a graphics rendering and animation infrastructure available on both iOS and OS X that you use to animate the views and other visual elements of your app.(苹果官方文档.见参考链接)

<h6>1.Category/Util</h6> sstoolkit一套Category类型的库,附带很多自定义控件 功能不错~ BFKit又一套Category类型的 Kit,还有几个工具类 APUtils又一套Category类型的 Kit QSKit又一套Category类型的 Kit iOS-Categories又一套Category类型的 Kit BlocksKit将Block风格带入UIKit和Founcation cocoa-helpers一些Cocoa的扩展 2年前的工程 iOS-NBUKit一套基础工具库 CoconutKit一系列扩展和一些自定组件 STUtils一系列扩展包 PSFoundation一系列扩展 和功能增强 ConciseKit一系列宏定义 挺有意思 DTFoundation又一系列扩展。。。 BBBootstrap一些常见功能的扩展库 Objective-Shorthand将长方法简化的Category BGUtilities几个简单好用的Cagegory cooliris-toolkitcooliris出品的基础工具库,从GoogleCode clone过来 BaseKit一套基础工具库 NSObject-Utility-Categories如题 NSArray-Utilities如题 aqtoolkit一些常用的东西 DLIntrospection一些NSObject的扩展 YOLOKit一些方便的快速枚举方法 NSDate-Extensions如题日期 ALActionBlocks在UIControl上添加的Block事件 jrswizzle主要是swizzling moriarty一些还算有用的功能 QSUtilities一些基础库 (Instagram有用到) libextobjc一堆oc的扩展 PrettyTimestamp友好时间的扩展 DateTools不错的时间处理相关的工具箱 ios-jail-break-detector检测是否越狱 有上线 crackify检测App是否被破解 UIView-AnimatedProperty为UIView添加动画效果的property,有用到swizzle UIView-Positioning为UIView的frame等添加更多属性,方便设置view Block-KVOBlock风格的KVO~ MTDates一些Data的category CocoaSecurity常见的哈希、加密解密算法 FCFileManager更好更方便的访问文件和文件夹 sskeychain访问keychain 支持iOS Mac UISS用JSON的风格设置UIKit样式 Underscore.m仿JS的underscore.js来写的,用于访问和处理数据 TICoreDataSync在不同设备间对CoreData进行同步 (iPhone iPad Mac) SoloComponents-iOS几个轻量的组件,没什么用,2年没更新 MAObjCRuntime将运行时包装成ObjC Objective-C-Generics通过宏定义勉强实现的范型 TBMacros一些常用的宏定义 NSString-Ruby为Ruby程序员带来的字符串相关功能 ObjectiveRecordCoreData包装的活动记录 有RoR风格的API

<h5>2.基础功能</h5> mediaextract纯C的一些常用媒体文件的解析读取 objection一个估计是java ee写多了的人搞的。。注解依赖注入xx工厂之类的 TyphoonIoC容器啊~~ HTKit一票乱七八糟的东西 StringScore模糊匹配字符串 查找某两个字符串的相似程度 RegexKitLite正则表达式库 (从SF.net mirror过来) Objective-C-RegEx-Categories正则表达 FormatterKit一个NSString的格式化工具,支持时间、颜色、地址、名字等等 TransformerKitNSValueTransformer的封装 NanoStoreKV存储 (无模式/NoSQL) TMCachetumblr开源的一个内存/文件缓存,很棒 PINCachepinterest开元的的一个内存/文件缓存,从TMCache修改而来,快速无死锁 EGOCacheEGOImage里面的 Cache功能 Haneke一个开箱即用的图片Cache HJCache一个缓存网络内容等的Cache RNCryptor加密解密相关 貌似更上流, note:去看一下他博客,有更详细的文章 MIHCrypto各种加密解密算法 (AES/DES/RSA/MD5/SHA等),包装自OpenSSL INBSecurityCrypto一些加密解密工具和示例 ssziparchivezip压缩 zip解压~ ZipKit一个ZipKit 从bitbucket Mirror过来 ZipKit如同ZipKit 改为ARC了 zipzapZip文件处理 底层为libz MTMigration版本升时执行一次 MTControljQuery风格touch事件绑定 storage快速、线程安全的I/O存储操作 CHCSVParserCVS文件解析 YLMoment日期的解析,格式化等,支持多语言 CMUnistrokeGestureRecognizer各种奇怪的手势检测 EKAlgorithms常见算法的ObjC实现,包括排序、查找、数组、字符串、常用数据结构..

<h5>3.框架/封装</h5> three20Facebook 的一个曾经用得广泛的庞大的iOS开发框架 陈旧并且已不再维护 nimbusthree20替代品 又一个庞大的框架 BeeFramework一个基于MVC的框架, 比较大.. OmniGroup一套很庞大的库(OmniGroup) 支持Mac和iOS ReactiveCocoa一套响应式编程的框架(Functional Reactive Programming) 支持Mac componentkitFacebook 的一个功能性的、响应式UI框架, 被应用于Facebook App AsyncDisplayKitFacebook 出的一个用于保持UI流畅性的框架, 其原理被用于Paper react-nativeFacebook 出的框架, 通过JS和React构建原生界面 KVOControllerFacebook 出的线程安全KVO MAKVONotificationCenter一个自定义KVO Center WebViewJavascriptBridgeUIWebView和Cocoa之间的事件传递 JavaScriptBridgeJavaScriptCore到Cocoa之间的变量传递和代码执行Bridge OCUDL自定义literals 有点意思~~ Motif通过 JSON 定制界面,支持 Live Reload KiwiBDD for iOS MagicalRecordCoreData的包装 简化代码 fmdbSQLite的封装 KZPropertyMapper一个Model的封装,类JSON BlockInjection为某个方法前后注入Block,类似AOP Aspects又一个AOP库,用swizzle实现的切面... Bolts-iOS低层次的,更好的管理异步任务的库,支持Facebook AppLinks(同时有Android版) NSObject-ObjectMapJSON和XML包装到Object Ejecta通过OpenGL OpenAL来实现 WebCanvas JS等,很庞大小鱼儿玄机30码,~ FCModel为SQL程序员包装一下CoreData

<h5>4.功能/封装</h5> iOS-System-Services获取各种设备信息 包括硬件、网络、内存、进程等等 iAppInfos简单获取设备信息,例如设备、空间、Provisionning LocationManager更好用的获取和追踪设备位置的工具,包括GPS信息 MKStoreKitiAP用的库 CargoBay一个包装iAP StoreKit的库 RMStore很轻量的iAP包装 OpenUDID系统UDID替代方案 UIDevice-with-UniqueIdentifier-for-iOS-5另一个UUID解决方案 但iOS7不能用了 uidevice-extension一系列UIDevice的扩展 有PrivateAPI 最新的工程在cookbook-code里 InAppSettingsKit包装了设置、URLScheme、Mail、Icon等东西 DTWebArchive允许访问剪贴板中的WebArchive格式富文本 routable-iosinApp的URL定义 在App内打开自定义URL JLRoutes复杂的URL Scheme解析和路由 Emoji访问Emoji图片的功能 PDKeychainBindingsController以类似UserDefault的方式访问Keychain CoreTextWrapper一个CoreText库的包装 Slash对AttributeString的封装 ABContactHelper访问联系人 APAddressBook封装了访问通信录/联系人的功能 GVUserDefaults包装了 NSUserDefaults,只需要声明属性就能用,很方便 YapDatabase一个KV库,包装自sqlite,但有更多包装好的功能,比如缓存/全文搜索 YTKKeyValueStore又一个KV库,简单包装自sqlite realm-cocoa为移动设备专门设计的数据库,旨在替代sqlite/CoreData iHasApp检测某个App是否安装,集成了常见的URL Scheme UIActivityCollectionGithub上UIActivity项目的集合 STPTransitions更好的 自定义ViewCtrl 过渡动画API PureLayoutAutoLayout的封装,支持iOS/Mac,支持swift MasonryAutoLayout的封装 KeepLayoutAutoLayout的封装 貌似比较好用 JTSHardwareInfo定义enum来获取和判断设备型号 MTGeometryCGPoint/Size/Rect的一些几何学的计算 MYSRuntime包装了RunTime的一些方法,使用更容易 MTStringAttributes更容易的访问和修改 NSAttributedString MTPDF基于CF的PDF Object封装,更容易的访问和创建PDF

目录 提交应用之前的检查列表1.安全:1.1 不当内容1.2 用户生成的内容1.3 儿童分类1.4 人身伤害1.5 开发者信息

2.性能:2.1 应用程序的完整性2.2 Beta版测试2.3 应用内容的准确性2.4 硬件兼容性2.5 软件要

3.业务:3.1 付款3.2其他商业模式问题

4.设计:4.1 模仿者4.2 最少功能4.3 垃圾应用4.4 扩展4.5 苹果网站和服

5.法律:5.1 隐私5.2 知识产权5.3 游戏,赌博,彩 提交应用之后

  • URL Scheme 是什么?
  • 项目中关键的配置
  • 注意事项

从上面官方文档中我们可以知道,Core Animation一个图像渲染和动画的底层架构。我们主要是用它是我们app中的视图或者其他可见部分动起来。

1.1 上线前的准备

Before提交应用之前的检查列表为了帮助你的应用能够尽可能顺利的过审,请查看下面列出来的可能降低审核速度或者被拒绝的常见失误。本清单无法代替审核条款,但你需要确保你已经达到了清单的要求作为良好的开始。

  • 1、 测试你的应用程序,保证它不会发生崩溃和错误
  • 2、 确保你的应用程序的信息和应用内容保持完整和准确
  • 3、 保证联系人信息始终有效,审核团队可以及时联系到你
  • 4、 提供一个有效的测试帐号以及登录信息,并提供测试功能必要的的硬件和资源(例如,一个测试用的二维码)
  • 5、 保证后台服务在审核期间运行正常
  • 6、 如果应用的某些功能和应用内付费隐藏较深,需提供详细的描述文档和支持文档。如果因为地域的原因我们无法正常使用该功能,请提供该功能的描述视频链接。
  • 7、 请检查你的应用程序是否符合其他规范,包括(注意文中部分内容也有对应的条款和说明,请注意查看)

iOS有个特性就是应用将其自身”绑定”到一个自定义 URL scheme 上,该 scheme用于从浏览器或其他应用中启动本应用。常见的分享到第三方之间的跳转都是基于Scheme的。

今天狠下心,花了一天的时间好好拜读了一下苹果的核心动画说明文档,虽然英文读的我很痛苦,但是还是收获颇多。首先跟大家说一些理论性的东西,毕竟实现那一套东西已经被写烂了,实在写不出什么东西了。

1.2 开发指南
  • 1: a开发指南

    • 应用程序编程指南(App Programming Guide)
    • 应用扩展编程指南(App Extension Programming Guide)
    • iOS数据存储条款(iOS Data Storage Guidelines)
    • Mac OS X文件系统文档(Mac OS X File System Documentation)
    • Safari扩展开发指南(Safari Extensions Development Guide)
    • Safari扩展开发指南(Safari Extensions Development Guide)
  • 2: b设计指南

    • iOS人机交互界面条款(iOS Human Interface Guidelines)
    • Mac OS人机交互界面条款(Mac OS Human Interface Guidelines)
    • tvOS人机交互界面条款(tvOS Human Interface Guidelines)
    • watchOS人机交互界面条款(watchOS Human Interface Guidelines)
  • 3: c 品牌营销指南

    • App Store市场营销条款(App Store Marketing Guidelines)
    • 苹果支付身份条款(Apple Pay Identity Guidelines)
    • 加入苹果支付许可条款(Add to Apple Wallet Guidelines)
    • 使用Apple商标和版权的条款(Guidelines for Using Apple Trademarks and Copyrights)

通过对比网页链接来理解iOS 上的 URL Schemes,应该就容易多了。

也就是它本身不能进行视图内容的绘画。但是它可以基于硬件对你视图的内容进行合成和操作。重要的事情着重说:

1.3 被拒后的列举
  • URL,我们都很清楚,http://www.apple.com就是个URL,我们也叫它链接或网址;
  • Schemes,表示的是一个 URL 中的一个位置——最初始的位置,即 ://之前的那段字符。比如 http://www.apple.com这个网址的Schemeshttp

说完上面的东西大家心里应该大致记住两件事,1.Core Animation本身不能进行绘画,至于他怎么实现动画,一会儿我会揭晓。2.Core Animation的核心是层对象。

1.1 不当内容应用程序不应该包括攻击性,敏感,令人不悦,侮辱或者品味低下的内容。

########1.1.1 诽谤或者人格侮辱的内容,包括引用或者评论宗教、种族、性取向、性别或者其他目标群体的内容,特别是该应用对特定的人群造成了伤害(只有专业的政治讽刺作家和幽默大师才不会受到此限制)。

########1.1.2 对人或动物被杀害、致残、折磨、虐待的逼真的描述或者具有暴力倾向的内容。如果是游戏,那么其中的敌人不能只针对特定的种族、文化、政府、公司以及任何其他实体。

########1.1.3 鼓励人们非法或者轻率使用武器和危险品的内容,或者方便人们购买枪支的内容。

########1.1.4 公开的性爱或色情的内容。根据韦氏词典(Webster’s Dictionary)的定义,这些内容特指“明确的描述或展示性器官,或者目的在于激发人们的性欲,而不是展示美学或者渲染气氛”。########1.1.5 煽动宗教仇恨或者对宗教文献的误导性和不准确的引用。########1.1.6 提供虚假信息和虚假功能,包括提供不正确的设备信息,提供恶作剧的功能例如虚假的位置跟踪工具。即便是明确指出该应用程序是出于娱乐性的目的也不会无视该条款。发送匿名虚假诈骗信息或者拨打恶意电话的应用会被直接拒绝。

根据我们上面对URL Schemes的使用,我们可以很轻易地理解,在以本地应用为主的 iOS 上,我们可以像定位一个网页一样,用一种特殊的 URL 来定位一个应用甚至应用里某个具体的功能。而定位这个应用的,就应该这个应用的URL 的 Schemes 部分,也就是开头儿那部分。比如短信,就是 sms:

首先声明一点,CALyer的在屏幕上显示的位置是这个两者相互重要的结果。

1.2 用户生成的内容为了防止非法滥用用户生成的内容,从而给用户提供虚假信息、盗取用户的知识产权,社交应用以及应用当中包含用户生成的信息的应用必须包括下述功能:
  • 过滤不良内容
  • 提供举报机制
  • 后台服务可以提供阻止骚扰用户的行为
  • 提供官方联系方式,让用户可以快速联系到开发商

如果应用在使用用户生成的内容或者提供服务的时候,主要目的是发布色情内容,人肉搜索、侮辱用户,人身威胁、恐吓用户,这种应用不应该放在应用商店,而且苹果可能会不通知开发商并直接下架。如果你的应用使用用户生成的信息来提供网络服务,并且网页上包含了一些限制级的内容,需要默认隐藏并且提供明显的NSFW标识,用户主动点击才会显示。

你可以完全按照理解一个网页的 URL ——也就是它的网址——的方式来理解一个 iOS 应用的 URL,拿苹果的网站和 iOS 上的微信来做个简单对比:

第一种坐标系 point-based coordinate systems ,这种坐标是我相信大家都非常熟悉,我们平常对于视图的定位都是用的它。

本文由小鱼儿玄机30码发布于编程,转载请注明出处:正文为转发整理出处为,用于从浏览器或其余使

关键词: 小鱼儿玄机30码