iOS 4.5.5版本 被拒绝!!!! "App Rejected : non-public APIs"
今天上午收到邮件说是被拒绝了
原文是
这一版本 我就添加一个购买sku的方法, 并没有添加什么库 ,简简单单的一次升级给我出一私有方法拒绝!!!!!
在xcode8 iOS10 刚出来 ,苹果新规则进一步丰富,出现这种意外的问题 一定不只我一个,的确 我在stack over flow 上面 找到了同病相怜的人
他的意思也表达很明确 是说 都更新好几版了都没问题,现在说我用了私有方法,其实并没有.
一位热心同行 告知,使用命令行 能找到 项目中以私有方法为关键字的全部文件和方法
我也是这么做的
操作如下
(1)在工程目录下,操作
grep -R 'cancelAction:
' * 或者
grep -R '
defaultInstance' *
点击回车看结果
(2)其实有很多冗余输出,其实第一步先要删除 工程文件build里面的全部文件 再执行(1)
(3) 的确有输出
在CrashReporterSDK 中 竟然"matches"了, 然后我查了工程中这个 CrashReporterSDK.framework 没有被用到, 估计是被替代的框架却在当时没有删除, 于是我做了直接删除的处理
其次"cancelAction:"输出了几处项目代码段,正如苹果文件里面所说,如果项目里面命名和私有方法名称匹配,建议你也要好好重新起名字,避免带来不必要的后果(拒绝你呗 当你是私有方法).
所以 这个关键字段相关的代码 我都改了一遍.
再次输入两段命令行 输出都是 No such file or directory , 放心了.
总结分析:
1 . 苹果审核 再一次加严 , 甚至命名和私有方法一样 也不可以了,至少 官方建议你这样, 所以严格执行开发命名规范吧.
2 . 这次比较意外 是一次不错的经验教训的总结
3 . 如果再次被拒绝 那我就再写博客铭记每一次的痛...
4. 关键 现在 我没找到 苹果审核拒绝私有api的命名 列表, 虽然 我不用,但是我至少可以避免往坑里跳啊 如果 大家有相关建议欢迎写评论 告知
我只查到
- 2.5.1 Apps may only use public APIs. Learn more about public APIs. 没看见私有相关说明,如果还是有 命名冲突,那岂不是很倒霉,并且是官网审核拒绝,而不是你打包的时候就被判定无效,还得挨着一两天审核的忐忑小心脏, 这个 大家有什么好的建议?????欢迎写评论告知
参考:
https://developer.apple.com/app-store/review/guidelines/#software-requirements
http://stackoverflow.com/questions/39405016/ios-app-rejected-non-public-apis
iOS 4.5.5版本 被拒绝!!!! "App Rejected : non-public APIs"的更多相关文章
- wzplayer for ios 针对(mms)优化版本V1.0
wzplayer for ios针对mms优化版本发布. 1.支持mms,http,rtmp,rtsp等协议 2.支持全格式 下载地址:http://www.coolradio.cn/WzPlayer ...
- iOS 制作发布证书,发布到App Store
---恢复内容开始--- 1.登陆 iOS Dev Center 选择进入iOS Provisioning Portal. 2.在 iOS Provisioning Portal中,点击App IDs ...
- Xamarin.iOS - 利用Settings插件与EAIntroView制作App的欢迎界面
Xamarin.iOS - 利用Settings插件与EAIntroView制作App的欢迎界面 关于欢迎界面 很多App第一次启动都会有一个欢迎界面,欢迎界面往往决定这用户对App的第一映像,所以欢 ...
- iOS利用Application Loader打包提交到App Store时遇到错误The filename 未命名.ipa in the package contains an invalid character(s). The valid characters are:A-Z ,a-z,0-9,dash,period,underscore,but the name cannot start w
iOS利用Application Loader打包提交到App Store时遇到错误: The filename 未命名.ipa in the package contains an invalid ...
- iOS 8及以后版本 如何创建UIAlertView?
1. Important: UIAlertView is deprecated in iOS 8. (Note that UIAlertViewDelegate is also deprecated. ...
- iOS-获取Model(设备型号)、Version(设备版本)、app(程序版本)等
IOS-获取Model(设备型号).Version(设备版本).app(程序版本)等 NSLog(@"uniqueIdentifier: %@", [[UIDevice curre ...
- iOS自定义弹出视图、收音机APP、图片涂鸦、加载刷新、文件缓存等源码
iOS精选源码 一款优秀的 聆听夜空FM 源码 zhPopupController 简单快捷弹出自定义视图 WHStoryMaker搭建美图(贴纸,涂鸦,文字,滤镜) iOS cell高度自适应 有加 ...
- iOS remote debug & Android remote debug & Chrome & APP
iOS remote debug & Android remote debug & Chrome & APP iOS remote debugging 如何在 iOS 真机上调 ...
- IOS小组件(8):App与Widget数据共享
引言 Widget是一个迷你版的App,IOS有沙盒机制,不同App之间无法直接共享数据.组件和主App之间其实就是不同App的关系,所以也无法通过userdefaults.standard来传数 ...
随机推荐
- 如何获取wifi名称(SSID)
@import SystemConfiguration.CaptiveNetwork; /** Returns first non-empty SSID network info dictionary ...
- 搭建Windows Node.js环境
利Javascript做为服务端脚本,通过Nodejs框架web开发.Nodejs框架是基于V8的引擎,是目前速度最快的Javascript引擎.chrome浏览器就基于V8,同时打开20-30个网页 ...
- archive的时候报“ no identity found"错误 解决方式
第一步: 在xcode----target----general----identity----team里 增加你们公司的账号就能够了 第二步: Xcode > Preferences > ...
- 第一百九十九节,jQuery EasyUI,Panel(面板)组件
jQuery EasyUI,Panel(面板)组件 学习要点: 1.加载方式 2.属性列表 3.事件列表 4.方法列表 本节课重点了解EasyUI中Panel(面板)组件的使用方法,这个组件不依赖于其 ...
- 通过Bag一对多映射示例(使用xml文件)
如果持久化类具有包含实体引用的列表对象,则需要使用一对多关联来映射列表元素. 我们可以通过列表(list)或包(bag)来映射这个列表对象. 请注意,bag不是基于索引的,而list是基于索引的. 在 ...
- HTML 事件的例子:
HTML 事件的例子: 当用户点击鼠标时 当网页已加载时 当图像已加载时 当鼠标移动到元素上时 当输入字段被改变时 当提交 HTML 表单时 当用户触发按键时
- Java 学习笔记及资源
Spring框架入门HelloWorld :http://www.importnew.com/13246.html (iteye 唐 博客,跟我学Sprint) Spring 框架下载地址:http ...
- CentOS 6.5 Git源码安装
首先清除系统自带git,使用如下命令 yum -y remove git 一.下载Git源码包 wget https://www.kernel.org/pub/software/scm/git/git ...
- javascript对象定义
转载自:http://blog.sina.com.cn/s/blog_75a8cfac0100pif0.html javascript定义对象写法 javascript定义对象的几种简单方法 1.构造 ...
- Python中threading的join和setDaemon的区别及用法[例子]
Python多线程编程时,经常会用到join()和setDaemon()方法,今天特地研究了一下两者的区别. 1.join ()方法:主线程A中,创建了子线程B,并且在主线程A中调用了B.join() ...