2天时间,聊今年最热的 Agent、上下文工程、AI 产品创新等话题。2025 年最后一场~ 了解详情
写点什么

iOS 开发周报:Swift 项目合并 Android 分支,App Store 开展 “Apps for Earth” 促销活动

  • 2016-04-18
  • 本文字数:1903 字

    阅读完需:约 6 分钟

新闻

  1. Swift 项目合并 Android 分支:在今年二月,Facebook 的工程师 Brian Gesiak 向 Apple 提交了一个 pull request,将 Swift 的标准库移植到了 Android 上。这样开发者可以使用 NDK 的方式在 Android 上调用 Swift 编译的内容。本周 Apple 将这些代码合并到了 Swift 仓库中,这意味着我们可以在不久的将来在 Android 上运行 Swift。但是值得指出的是,这并不代表我们现阶段可以很好地使用 Swift 来开发 Android 应用,在 SDK 调用和开发模式的匹配上,仍然会有很多工作要做。
  2. App Store 开展 “Apps for Earth” 促销活动:很多用户应该已经注意到了一些 app 的图标最近都换成了绿色。这些 app 参与了 Apple 与 WWF (世界自然基金会) 合作推出的 “Apps for Earth” 活动,其中包括像是炉石传说,愤怒的小鸟 2,VSCO,LINE 等知名 app。在活动期间这些 app 的部分收入将捐助给 WWF 以支持它们的环保行动。
  3. Apple 可能正在策划推出 App Store 付费排名:国外有消息指出,Apple 可能在考虑将竞价排名或者付费关键词搜索加入到 App Store 的搜索体系中。根据现有消息,App Store 的付费排名可能采取和 Google 搜索的关键字购买类似,开发商对某个关键字进行购买,并让自己的 app 出现在搜索前列。如果消息属实,那么这对整个 App Store 生态将产生相当大的影响。

教程

  1. iOS 关于 navigationBar 的一些:毛玻璃、透明、动态缩放、动态隐藏:关于 iOS 中的导航栏自定义相关技术,在 iOS 7 改变整体风格以前就是一个热门话题。而在 iOS 7 加入半透明效果和重新定义了视觉元素之后,导航栏的显示和动态特效自定义需求则更加复杂。这篇文章对导航栏的常见自定义效果进行了一些整理和示例说明。
  2. Custom UIViewController transitions in VIPER :ViewController 转场的 API 在 iOS 7 被引入到 iOS SDK 中,从此开发者可以方便地控制和自定义转场的效果。如果你对 VIPER 或者其他一些非 MVC 的架构方式有一定了解的话,会知道其实采取这些非 MVC 的方式时,和 CocoaTouch API 进行交互会有一些额外需要注意的事项和技巧。这篇文章就为我们说明了如何在一个 VIPER 架构的项目中使用 ViewController 转场相关的 API。如果你有意尝试新的架构方式的话,这可能会对你有所启发。
  3. Powerful private methods for debugging in Cycript & LLDB :使用 LLDB 进行 app 调试可以说是广大 iOS 开发者的日常必备技能了,而相比起来,知道或者熟悉 Cycript 的开发者就会少很多。 Cycript 是一款能在越狱设备上对运行时进行注入的调试工具,你可以用它来对 app 进行探索。这篇文章为我们介绍了一些调试时很有用,但却鲜为人知的命令。

开源项目

  1. EasyPeasy :另一个用来简化创建布局约束的框架,EasyPeasy 使用了更简洁和智能的约束描述语法来创建约束,并提供了很多便利的方法和属性辅助我们以更加直观的方式用纯代码使用 AutoLayout。如果你不使用 Interface Builder,而是选择在源代码中创建视图和约束的话,这个框架可以帮助你节省很多时间。
  2. Knuff :一个开源的 OS X app,可以用来设定使用某个推送证书进行推送通知的测试。在以前我们可能经常会使用像是 houston 这样的命令行工具进行推送,而 Knuff 则使用 GUI 为我们提供了相同的功能。这在开发过程中进行快速测试时会非常方便。
  3. TextAttributes :Cocoa 框架中有一些使用起来会令人抓狂的 API,NSAttributedString 就是其中之一。想想看要创建一个带有格式的字符串是多困难吧:寻找 Range,指定属性,创建配置字典等等。Cocoa 这样设计 API 可以最大限度保证松耦合,确实有其优势。但是作为 API 的使用者,这样的接口使用起来并不是特别方便,而且并不太适合 Swift 的强类型约束。TextAttributes 框架将这些松耦合的接口进行了重新封装,使其类型更加安全,也使得原有的 API 更易用一些。
  4. Peek :一个可以在开发时截取当前界面,并且对界面里的视图进行检测和查看的框架,你可以把它理解为可以运行在 iOS 上的 Reveal 。通过集成 Peek,你可以快速确认界面布局是否满足设计师的需求,也可以在运行时确认某个 view 的状态是否和预想一样。
  5. FBMemoryProfiler :Facebook 出品的一个实时监测内存使用的库。相比于 Xcode 自带的 Instruments,这个框架提供了更友好的信息,包括当前没有释放的对象以及 retain cycle 的详细信息等。这个工具是高度模块化的,你可以选择自己感兴趣的部分使用,比如要是你只想要检测 retain cycle 的话,可以只需要使用 Facebook 同时公布的这个项目: FBRetainCycleDetector

感谢徐川对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2016-04-18 19:003799
用户头像

发布了 59 篇内容, 共 24.7 次阅读, 收获喜欢 4 次。

关注

评论

发布
暂无评论
发现更多内容

京东APP百亿级商品与车关系数据检索实践 | 京东云技术团队

京东科技开发者

数据库 京东云 企业号 5 月 PK 榜

mosn基于延迟负载均衡算法——走得更快,期待走得更稳 | 京东云技术团队

京东科技开发者

负载均衡 京东云 企业号 5 月 PK 榜

玩转服务器之Java Web篇:手把手教你搭建Java Web环境 | 京东云技术团队

京东科技开发者

Java 云服务器 京东云 企业号 5 月 PK 榜

几种常见的Python数据结构

华为云开发者联盟

Python 开发 华为云 华为云开发者联盟 企业号 5 月 PK 榜

多位P8大佬联合打造的Java面试八股文,堪称《Java驾考宝典》

Java你猿哥

Java MySQL redis spring 多线程

获得清晰、无噪点的图像:Topaz Photo AI 激活电脑版

真大的脸盆

Mac Mac 软件 图像降噪 图像噪点处理

为什么老有人想让我们“程序员”失业? | 社区征文

坚果

三周年征文

守护企业网站安全!选择华为云网站安全方案更准

YG科技

Spring Boot:MyBatis分页

Java你猿哥

Java spring Spring Boot mybatis ssm

kafka高性能设计之内存池

Java你猿哥

Java kafka ssm 架构师 内存池

外译笔记 | 比尔盖茨:AI与智能手机和互联网一样具有革命性

京东科技开发者

AI 京东云 企业号 5 月 PK 榜

另一个CI/CD构建工具

weichenqi

DevOps 云原生 运维平台

极光笔记 | 极光推出“运营增长”解决方案,开启企业增长新引擎

极光GPTBots-极光推送

营销 运营 用户运营

京东小程序折叠屏适配探索 | 京东云技术团队

京东科技开发者

京东云 企业号 5 月 PK 榜 京东小程序

全网好评!程序员面试必备的Java八股文,适合所有的Java求职者!

Java你猿哥

Java Spring Boot 多线程 java基础 Java八股文

耗时15天,我把“大厂面试指南”进行了重新梳理,V2.0版已上线

Java你猿哥

Java 数据库 计算机 java面试 java基础

华为云网站安全解决方案:让企业上云后无忧开展网站业务

YG科技

试用「ChatGPT」几周之后

人工智能 ChatGPT

RabbitMQ - 1消息队列中间件AMQP协议、和主要角色

Java你猿哥

Java ssm AMQP Rabbit MQ

惊艳的数据可视化案例 让可视化设计灵感迸发

2D3D前端可视化开发

数据分析 数据可视化 数据可视化工具 前端数据可视化 数据可视化设计

AI系统伦理道德风险之可信任度验证

陈磊@Criss

AI 伦理道德

All in AI,现在开始算不算太晚?

Baihai IDP

人工智能 AI 企业号 5 月 PK 榜 人工智能浪潮

浪潮信息 KOS 助力企业核心业务完成 CentOS 迁移替换,性能提升 10%|龙蜥案例

OpenAnolis小助手

操作系统 开源社区 CentOS迁移 浪潮信息 龙蜥案例

华为云网站安全解决方案助力企业腾“云”驾“务”

YG科技

优雅!用了这两款插件,我成了整个公司代码写得最规范的码农

AI乔治

Java 架构 面试 IDEA java代码规范

什么是人工智能领域的过拟合和欠拟合

汪子熙

人工智能 机器学习 深度学习 强化学习 三周年连更

当Serverless遇到Regionless:现状与挑战

华为云开发者联盟

云原生 后端 华为云 华为云开发者联盟 企业号 5 月 PK 榜

Android App开发超实用实例 | ​Broadcast

TiAmo

broadcast broadcastreceiver Android APP

Spring Data JPA:轻松实现数据持久化

Java你猿哥

Java spring ssm spring data

华为云网站安全解决方案一站式护航

YG科技

iOS开发周报:Swift 项目合并 Android 分支,App Store 开展 “Apps for Earth” 促销活动_移动_王巍_InfoQ精选文章