首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

AppStore 打包上传后提示“二进制文件无效” 的解决方法

昨天提交打包提交App,将包上传到iTunes Connect之后,以为就能发布了,便点击构建版本,发现没有刚刚上传的包,于是就点击"预发行"看一下,会看到"已上传",过不久再刷新一次再看,就变成了二进制无效,无比的郁闷,上传了五六次都是二进制文件无效。

在检查了app是否支持64位以后,我以为是传错了版本,把debug版本传上去了,排查了后发现不是。

查了很多的资料都说是使用了私有API或者是iDFA设置不对的问题,但是茫茫多的代码和引用的第三方库,鬼知道那里用到了私有API或者iDFA,一行行的查工作量也太大了。幸好找到了stackoverflow上一个问答,可以方便的检测私有api,地址。为了防止失效截个图:

Snip20171218_3.png

但是可惜,没查出来。。。

检查IDFA的方法:

步骤:

1、打开终端cd到要检查的文件的根目录。

2、执行下列语句:grep -r advertisingIdentifier . (别少了最后那个点号)。

依然没有。。。

这个时候想到去邮箱里看一下苹果发的邮件(其实应该首先去看的),看到了这个

不允许监听锁屏通知???

立刻去全局查询关键字:CFNotificationCenterGetDarwinNotifyCenter;screenLockStateChanged;NotificationLock;screenLockStateChanged;

一无所获。。。

但是我觉得会监听锁屏通知的应该是那些需要在后台做操作的功能,于是我先去排查了一下应用里的音频功能,然后在一个没有被引用的监听方法里发现了这个:com.apple.springboard.lockstate

因为之前的码哥废弃了这个监听,改用

applicationProtectedDataWillBecomeUnavailable:

但是原来的代码没有删除也没有注释

现在苹果不管你用没用只要你代码里有"com.apple.springboard.lockstate"关键字就判断二进制文件无效,我真的是躺枪(:зゝ∠)!

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20230303A051YF00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券