mac电脑开发者实用工具推荐

mac电脑开发者实用工具推荐,第1张

WeFlow - 一个基于 tmt-workflow 前端工作流的开发工具

Koala - 预处理器语言图形编译工具,支持 Less、Sass、CoffeeScript、Compass framework 的即时编译。

CodeKit - 自动编译 Less、Sass、Stylus、CoffeeScript、Jade & Haml等文件。

PaintCode - 将设计转换成 Objective-C, Swift 或 C# 代码。

Hostsprefpane - 编辑 hosts 文件的工具。

iHosts - 唯一上架 Mac App Store 的 /etc/hosts 编辑神器。

Integrity - 轻松找到无效链接。

SwitchHosts - 一个管理、切换多个 hosts 方案的工具。

Gas Mask - 编辑 hosts 文件的工具,更简单方便。

DiffMerge - 可视化的文件比较(也可进行目录比较)与合并工具。

Gemini - 智能的重复文件查找器。

Hex Fiend - 快速而聪明的开源十六进制编辑器。

BetterRename - 一款强大的批量重命名工具,可以通过搜索功能改名。

PPRows - 计算你写了多少行代码。

SCM Breeze - 用于增强与git交互的shell脚本集(用于bash和zsh)。

Beyond Compare - 对比两个文件夹或者文件,并将差异以颜色标示。

Cacher - 基于云的团队代码片段管理器,具有Gist同步,VSCode/Atom/Sublime软件包和Mac/Windows/Linux/Web客户端

Kaleidoscope - 一款很强大的文本文件和图像比较工具,同时和 git、svn 等版本控制工具能够完美的结合。

Fanvas - 把 swf 转为 HTML5 canvas 动画的系统。

EnvPane - 图形终端查看环境变量的应用工具。

Dash - 强大到你无法想象的 API 离线文档软件。

SnippetsLab - 管理和组织你的代码片段。

StarUML - 强大的软件建模软件。

Vagrant Manager - 管理你本地服务。

FinderGo Finder 中快速打开终端,定位到目录

Localname - 提供对本地开发服务器的访问权限。

zeplin - 前端与设计协同工作专用工具。

Go2Shell - 从 Finder 打开命令行。

SecureCRT - 一款支持 SSH、Telnet 等多种协议的终端仿真程序。

MJML - 简化设计回应电子邮件的方式。

TeXstudio - 集成创建 LaTeX 文档的写作环境。

Vagrant - 用来构建虚拟开发环境的工具。

LaunchRocket - 在 Mac 系统偏好设置中创建服务管理。

Swiftify - Xcode & Finder 扩展 Objective-C 转 Swift 代码转换器

Woodpecker - 在Mac上查看、编辑iOS App的沙盒文件, UserDefaults, Keychain项

a 消耗型商品:只可以使用一次的产品,使用以后即失效,必须再次购买。
示例:小说App购买的书币书券。
b 非消耗型商品:只需购买一次,不会过时或随着使用而减小的产品。
示例:游戏 App 的赛道。
c 自动续期订阅:容许用户在固定时间段内购买动态内容的产品。除非用户选择取消,不然此类订阅会自动续期。
示例:每个月订阅提供流媒体服务的 App。
d 非续期订阅:容许用户购买有时限性服务的产品。此 App 内购买项目的内容能够是静态的。此类订阅不会自动续期。
示例:为期一年的已归档文章目录订阅。

a 客户端向Appstore请求购买产品(假设产品信息已经取得),Appstore验证产品成功后,从用户的Apple账户余额中扣费。
b Appstore向客户端返回一段receipt-data,里面记录了本次交易的证书和签名信息。
c 客户端向我们可以信任的服务器提供receipt-data
d 服务器对receipt-data进行一次base64编码
e 把编码后的receipt-data发往itunesappstore进行验证
f itunesappstore返回验证结果给服务器
g 服务器对商品购买状态以及商品类型,向客户端发放相应的道具与推送数据更新通知

a 验证苹果自动续费的合理性: 是否是切换了账号了,是否是同一个账号下有2个不同的appleid订阅(订阅类型会进行此校验,消耗性直接走b)
b 后台校验成功后,创建后台订单
c 订单生成后,传入productID发起购买请求,苹果服务器验证产品成功后,从用户的Apple账户余额中扣费并向客户端返回凭证(receipt-data)
d 客户端拿到凭证后,向服务器发起凭证校验,服务器拿到凭证进行一次base64编码,发到苹果服务器进行校验并返回结果给服务器。
e 服务器对商品购买状态以及商品类型,向客户端发放相应的道具与推送数据更新通知

解决掉单问题前,我们要先简单把从支付请求开始到结束的步骤按照顺序排列出来,然后分析每一个步骤可能存在的调单情况。

调单的处理可分为在拿到交易订单之后调用 IPA 创建一个 IPA 交易,并且添加到支付队列,收到回调前跟收到回调后。
在创建后台订单时,此时后台会把订单信息回调,并将其已模型的形式存入Keychain中(存入Keychain中数据不会因卸载app等 *** 作丢失)

通过校验队列中的transactions进行判断,没有的话就是没有发起支付请求,那么此时需要重新发起支付的请求。

通过校验队列中的transactions进行判断,有的话就是已经发起支付请求但是没有收到回调,此时需要做SKPaymentQueuedefault()restoreCompletedTransactions()(恢复已经完成的 交易)

首先将transactionId和凭证更新到已存入的Keychain中,通过校验Keychain中的transactionId是否存在,来确定是否已经收到回调,此时需要拿着存入Keychain中的凭证等到后台去校验。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10683548.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-10
下一篇 2023-05-10

发表评论

登录后才能评论

评论列表(0条)

保存