web-dev-qa-db-ja.com

アプリの非公開セレクター?

ITunesConnect経由でアプリを送信しようとしています。 Xcodeは次のエラーをスローしています:

iTunes Storeの操作に失敗しました。アプリはPayload/InflationCalculator.app/Inflationの非公開セレクターを参照しましたCalculator: allocBatch:withEntity:count:,allowWithEntity:,fastIndexForKnownKey:indexForKey:

自分のコードで本にかなり近づいたので、どの「non-public selectors」を使用するのかわかりません。誰かアイデアはありますか?

ビューコントローラーのコード(私のアプリでは.Swiftのみ): https://Gist.github.com/Calda/aefc2f19bae5f3cf2e54

編集:将来の参考として、これはiTunes Connectの問題であり、プロジェクトの問題ではないことをiTunesConnectサポートに確認しました。これと同じ問題が発生している場合は、しばらく待ってからもう一度やり直すことをお勧めします。

23
Cal Stephens

私は次のようにしてこれを解決しました:

編集:最初のステップは必要ないと思います

1)ビルドフォルダーのクリーニング(Altキーを押しながら[製品]-> [クリーン]をクリックします)

2)派生データの削除([オーガナイザー]-> [プロジェクト]->プロジェクトの選択-> [派生データの削除])

2
coder

私も同じ問題を抱えていました。非公開のセレクターを使用しているため、一部のアプリを送信できませんでした。 Application Loaderも使用してみましたが、それでも同じエラーメッセージが表示されます

Xcode 6.0.1をインストールした問題を解決するために、ここからダウンロードできます: https://developer.Apple.com/downloads/index.action

インストールする前に、古いXcodeをゴミ箱に移動しました。

これで、任意のアプリを送信できます。

7
Slyv

同じアプリで、今日XCode6.1でこのエラーが発生しました。 2/3日前にXCode6.0.1で同じアプリ(少しのバリエーション)をエラーなしで送信します! XCode 6.1を更新したばかりで、このエラーでトラップされました。

XCode 6.0.1に切り替えましたが、送信に問題はありません。非公開API使用エラーはありません。 dmg ファイルをダウンロードし、xcode.appの名前をXCode_6.0.1に変更します。したがって、XCode6.1と共存します。

2
karim

APIはiOS7とiOS8で異なります。XCode6.1でビルドされたDeploymentTarget "8.0"に切り替えることで、アプリを検証しました。それはあなたたち全員にとっての解決策ではないかもしれませんが、あなたはそれを試してみることができます。

私が最近UIAlertControllerを使い始めたので私に起こったかもしれません-> iOS-8機能のようです。 iOS 7では、これはUIAlertViewになります。したがって、いくつかの気の利いた新機能を使用する場合、それらは以前のiOSバージョンでは利用できなかった可能性があります-したがって、非公開APIです。

2
seafoxx

Xcodeプロジェクトのすべての派生データを削除します/ Users/{user_home_folder}/Library/Developer/Xcode/DerivedDataそしてアプリは問題なく送信されました

2
senior_russia

私はApple側の問題のように見えた同じ問題に遭遇していました。私は昨日同じアプリ(v 1.0.1)を送信し、それを拒否し、今日も1行のコードの違いで再度送信しました。本日の提出は、上記の理由により却下されました。

アプリのバージョン番号を変更することで、すべての最新バージョンを使用してこれを解決することができました(例:1.0.1-> 1.0.2)。以前に提出したものが、拒否した古いバージョンのYMMVのキューにあるため、これは機能したと思います。

1
rudd