博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
排查私有API
阅读量:5878 次
发布时间:2019-06-19

本文共 1188 字,大约阅读时间需要 3 分钟。

一、排查问题

首先,来看一下上面的Apple发送的审核被拒原因邮件,其中提到了两个重要的点:

这次Apple审核,相对以往来说更为严格,以下提到的两个问题,在以往的版本迭代中,没有被拒绝过。

问题 ①:

Additionally, your app uses or references the following non-public APIs:IOServiceMatching, IOServiceGetMatchingService, IORegistryEntryCreateCFProperties, IOObjectRelease

您的应用程序使用或引用以下非公开API:

IOServiceMatching, IOServiceGetMatchingService, IORegistryEntryCreateCFProperties, IOObjectRelease

问题 ②:

Your app also uses the "prefs:root=" non-public URL scheme, which is a private entity. The use of non-public APIs is not permitted on the App Store because it can lead to a poor user experience should these APIs change.

您的应用程序还使用 prefs:root= 非公开URL方案,这是一个私有实体。

在App Store中不允许使用非公开API,因为如果这些API发生变化,可能会导致用户体验不佳。

二、解决问题 ①

  1. 首先打开终端,cd到项目的当前目录中:
cd (drag and drop your project folder here) Your_Project_Path
  1. 分别输入以下命令行,来找到使用了(私有API)的SDK或者.a的静态库:
find . | grep -v .svn | grep "\.a" | grep -v "\.app" | xargs grep (私有API)
grep -lr "(私有API)" * | grep -v .svn | grep -v .md
 
  1. 根据终端的提示找到对应的地方,将SDK替换成官方最新的SDK,然后再用第2步再确认一遍,确认无误后提交代码。

若SDK中依旧包含私有API,根据实际情况做相应的处理。

解决方案:

目前ATSDK的使用场景,用于帮助开发人员快速查找分析性能,UI等方面问题,暂时在发布环境中弃用ATSDK,其中包含的测试入口,FLEX调试工具,调整到其他位置。

?

转载于:https://www.cnblogs.com/spiderdzl/p/8495743.html

你可能感兴趣的文章
ABP理论学习之仓储
查看>>
NestJS 脑图
查看>>
我的友情链接
查看>>
Html body的滚动条禁止与启用
查看>>
Tengine新增nginx upstream模块的使用
查看>>
多媒体工具Mediainfo
查看>>
1-小程序
查看>>
CentOS图形界面和命令行切换
查看>>
HTML5通信机制与html5地理信息定位(gps)
查看>>
Mind_Manager_2
查看>>
手动升级 Confluence - 规划你的升级
查看>>
汽车常识全面介绍 - 悬挂系统
查看>>
电子政务方向:We7.Cloud政府云门户
查看>>
虚拟机Centos7连接Internet
查看>>
ansible 基本操作(初试)
查看>>
更改tomcat的根目录路径
查看>>
51nod 1292 字符串中的最大值V2(后缀自动机)
查看>>
加快ALTER TABLE 操作速度
查看>>
学习笔记之软考数据库系统工程师教程(第一版)
查看>>
基本网络概念
查看>>