(0040) iOS 开发之10.3新特性:程序内评价

2023-12-03 20:48

本文主要是介绍(0040) iOS 开发之10.3新特性:程序内评价,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

程序内评价之SKStoreReviewController

ios 10.3之后,系统提供了一个SKStoreReviewController类,可以帮助在app内部实现评价。App实现评价一般有下面几种方式。

#import <StoreKit/StoreKit.h>


方式一:程序内评价。要求(ios 10.3以上版本,每年弹出3次)

[SKStoreReviewController requestReview];


//苹果官方链接 https://developer.apple.com/ios/human-interface-guidelines/interaction/ratings-and-reviews/


实现效果如下:只能打星,不能评论。submit 按钮开发模式下无法点击。可能需要正式发布时才能点击吧!暂不清楚。




方式二:这种方式可以实现程序内评价。app内模态一个控制器。

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event

{

    SKStoreProductViewController *storeProductVC =[[SKStoreProductViewControlleralloc]init];

    storeProductVC.delegate =self;

    

    // 第一个参数为应用标识(appid NSNumber类型)构成的字典。第二个参数是一个block回调。

    [storeProductVC loadProductWithParameters:@{SKStoreProductParameterITunesItemIdentifier:@(1061832185)}completionBlock:^(BOOL result,NSError *error) {

        

        if (result) {

            [selfpresentViewController:storeProductVCanimated:YEScompletion:^{

            }];

        }else{

            NSLog(@"错误:%@" ,error);

        }

    }];

    

}


// SKStoreProductViewController代理方法

- (void)productViewControllerDidFinish:(SKStoreProductViewController*)viewController

{

    //返回上一个页面

    [selfdismissViewControllerAnimated:YEScompletion:nil];

}


调用方式三:App 跳转。

// NSString *urlString = @"https://itunes.apple.com/cn/app/zhang-jiang-hui/id1061832185?mt=8&action=write-review";

// [[UIApplication sharedApplication] openURL:[NSURL URLWithString:urlString]];

属于传统评价方法。

最终效果如下(先跳转到App Store应用->打开对应app ->模态出评论点赞界面)



这篇关于(0040) iOS 开发之10.3新特性:程序内评价的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/450823

相关文章

使用Python开发一个带EPUB转换功能的Markdown编辑器

《使用Python开发一个带EPUB转换功能的Markdown编辑器》Markdown因其简单易用和强大的格式支持,成为了写作者、开发者及内容创作者的首选格式,本文将通过Python开发一个Markd... 目录应用概览代码结构与核心组件1. 初始化与布局 (__init__)2. 工具栏 (setup_t

Spring Shell 命令行实现交互式Shell应用开发

《SpringShell命令行实现交互式Shell应用开发》本文主要介绍了SpringShell命令行实现交互式Shell应用开发,能够帮助开发者快速构建功能丰富的命令行应用程序,具有一定的参考价... 目录引言一、Spring Shell概述二、创建命令类三、命令参数处理四、命令分组与帮助系统五、自定义S

SpringBoot实现微信小程序支付功能

《SpringBoot实现微信小程序支付功能》小程序支付功能已成为众多应用的核心需求之一,本文主要介绍了SpringBoot实现微信小程序支付功能,文中通过示例代码介绍的非常详细,对大家的学习或者工作... 目录一、引言二、准备工作(一)微信支付商户平台配置(二)Spring Boot项目搭建(三)配置文件

Python通过模块化开发优化代码的技巧分享

《Python通过模块化开发优化代码的技巧分享》模块化开发就是把代码拆成一个个“零件”,该封装封装,该拆分拆分,下面小编就来和大家简单聊聊python如何用模块化开发进行代码优化吧... 目录什么是模块化开发如何拆分代码改进版:拆分成模块让模块更强大:使用 __init__.py你一定会遇到的问题模www.

Spring Security基于数据库的ABAC属性权限模型实战开发教程

《SpringSecurity基于数据库的ABAC属性权限模型实战开发教程》:本文主要介绍SpringSecurity基于数据库的ABAC属性权限模型实战开发教程,本文给大家介绍的非常详细,对大... 目录1. 前言2. 权限决策依据RBACABAC综合对比3. 数据库表结构说明4. 实战开始5. MyBA

使用Python开发一个简单的本地图片服务器

《使用Python开发一个简单的本地图片服务器》本文介绍了如何结合wxPython构建的图形用户界面GUI和Python内建的Web服务器功能,在本地网络中搭建一个私人的,即开即用的网页相册,文中的示... 目录项目目标核心技术栈代码深度解析完整代码工作流程主要功能与优势潜在改进与思考运行结果总结你是否曾经

Spring Boot + MyBatis Plus 高效开发实战从入门到进阶优化(推荐)

《SpringBoot+MyBatisPlus高效开发实战从入门到进阶优化(推荐)》本文将详细介绍SpringBoot+MyBatisPlus的完整开发流程,并深入剖析分页查询、批量操作、动... 目录Spring Boot + MyBATis Plus 高效开发实战:从入门到进阶优化1. MyBatis

Python基于wxPython和FFmpeg开发一个视频标签工具

《Python基于wxPython和FFmpeg开发一个视频标签工具》在当今数字媒体时代,视频内容的管理和标记变得越来越重要,无论是研究人员需要对实验视频进行时间点标记,还是个人用户希望对家庭视频进行... 目录引言1. 应用概述2. 技术栈分析2.1 核心库和模块2.2 wxpython作为GUI选择的优

新特性抢先看! Ubuntu 25.04 Beta 发布:Linux 6.14 内核

《新特性抢先看!Ubuntu25.04Beta发布:Linux6.14内核》Canonical公司近日发布了Ubuntu25.04Beta版,这一版本被赋予了一个活泼的代号——“Plu... Canonical 昨日(3 月 27 日)放出了 Beta 版 Ubuntu 25.04 系统镜像,代号“Pluc

利用Python开发Markdown表格结构转换为Excel工具

《利用Python开发Markdown表格结构转换为Excel工具》在数据管理和文档编写过程中,我们经常使用Markdown来记录表格数据,但它没有Excel使用方便,所以本文将使用Python编写一... 目录1.完整代码2. 项目概述3. 代码解析3.1 依赖库3.2 GUI 设计3.3 解析 Mark