首页
/ iRate 项目技术文档

iRate 项目技术文档

2024-12-24 09:43:34作者:魏侃纯Zoe

1. 安装指南

安装方式

要将 iRate 集成到您的应用中,请按照以下步骤操作:

  1. iRate.h, iRate.miRate.bundle 文件拖入您的项目。
  2. 如果您不打算使用本地化文本,可以选择不添加 iRate.bundle

注意:iRate 从版本 1.7 开始需要支持 ARC(自动引用计数)。如果您在非 ARC 项目中使用 iRate,需要在 iRate.m 类中添加 -fobjc-arc 编译器标志。

ARC 兼容性

如果您希望将整个项目转换为 ARC,请先在 iRate.m 中注释掉 #error 行,然后使用 Xcode 的“编辑”>“重构”>“转换为 Objective-C ARC...”工具,并确保所有需要使用 ARC 的文件(包括 iRate.m)都被勾选。

线程安全

iRate 内部使用多线程来避免阻塞用户界面,但所有 iRate 的外部接口都不是线程安全的。您应该只在主线程上调用任何方法或设置任何属性。

2. 项目使用说明

iRate 是一个帮助您推广 iPhone 和 Mac App Store 应用的库,它会在用户使用应用几天后提示用户进行评分。这种方法是获取积极应用评价的最佳方式之一,因为它仅针对常规用户(他们如果不喜爱你应用,就不会持续使用它)。

iRate 支持以下操作系统和 SDK 版本:

  • 支持的构建目标:iOS 10.3 / Mac OS 10.12(Xcode 8.3)
  • 最低支持的部署目标:iOS 8.0 / Mac OS 10.11
  • 最低兼容的部署目标:iOS 7.0 / Mac OS 10.9

注意:标记为“支持”表示库已测试与该版本兼容。标记为“兼容”表示库应该能在该操作系统版本上工作(即不依赖于任何不可用的 SDK 功能),但不再进行兼容性测试,可能需要调整或修复才能正确运行。

3. 项目API使用文档

iRate 类提供了多种属性以配置其行为和外观,以下是一些主要属性:

  • appStoreID:应用的 iTunes App ID。
  • appStoreGenreID:应用的类型,用于确定评分对话框的默认文本。
  • appStoreCountry:用于指定检查的 iTunes 商店的国家代码。
  • applicationName:在 iRate 警告中显示的应用名称。
  • applicationBundleID:用于从 iTunes 获取 appStoreIDappStoreGenreID 的应用包 ID。
  • daysUntilPrompt:用户必须在安装应用多少天后才会收到评分提示。
  • usesUntilPrompt:用户必须在启动应用多少次后才会收到评分提示。
  • eventsUntilPrompt:对于某些应用,可以使用事件数来触发评分提示。
  • usesPerWeekForPrompt:如果更关心应用的每周使用频率,可以使用此属性设置阈值。
  • remindPeriod:在用户选择“稍后提醒”后,应用应等待多少天再次提醒用户评分。
  • messageTitlemessageupdateMessage:评分提示的标题和消息。
  • cancelButtonLabelrateButtonLabelremindButtonLabel:评分提示的按钮标签。
  • useAllAvailableLanguages:是否使用 iRate.bundle 中的所有可用语言。
  • promptForNewVersionIfUserRated:如果用户已经评分,是否在新版本中提示重新评分。

4. 项目安装方式

请参考上文“安装指南”部分进行项目安装。

热门项目推荐
相关项目推荐

项目优选

收起
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
46
37
PDFMathTranslatePDFMathTranslate
PDF scientific paper translation with preserved formats - 基于 AI 完整保留排版的 PDF 文档全文双语翻译,支持 Google/DeepL/Ollama/OpenAI 等服务,提供 CLI/GUI/Docker
Python
30
3
Cangjie-ExamplesCangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
Cangjie
171
39
RuoYi-VueRuoYi-Vue
🎉 基于SpringBoot,Spring Security,JWT,Vue & Element 的前后端分离权限管理系统,同时提供了 Vue3 的版本
Java
165
34
HarmonyOS-ExamplesHarmonyOS-Examples
本仓将收集和展示仓颉鸿蒙应用示例代码,欢迎大家投稿,在仓颉鸿蒙社区展现你的妙趣设计!
Cangjie
249
63
RuoYi-Cloud-Vue3RuoYi-Cloud-Vue3
🎉 基于Spring Boot、Spring Cloud & Alibaba、Vue3 & Vite、Element Plus的分布式前后端分离微服务架构权限管理系统
Vue
24
17
CangjieCommunityCangjieCommunity
为仓颉编程语言开发者打造活跃、开放、高质量的社区环境
Markdown
892
0
RuoYi-CloudRuoYi-Cloud
🎉 基于Spring Boot、Spring Cloud & Alibaba的分布式微服务架构权限管理系统,同时提供了 Vue3 的版本
Java
25
10
advanced-javaadvanced-java
Advanced-Java是一个Java进阶教程,适合用于学习Java高级特性和编程技巧。特点:内容深入、实例丰富、适合进阶学习。
JavaScript
391
102
杨帆测试平台杨帆测试平台
扬帆测试平台是一款高效、可靠的自动化测试平台,旨在帮助团队提升测试效率、降低测试成本。该平台包括用例管理、定时任务、执行记录等功能模块,支持多种类型的测试用例,目前支持API(http和grpc协议)、性能、CI调用等功能,并且可定制化,灵活满足不同场景的需求。 其中,支持批量执行、并发执行等高级功能。通过用例设置,可以设置用例的基本信息、运行配置、环境变量等,灵活控制用例的执行。
JavaScript
11
2