私たちのアプリは次のメッセージでアップルによって拒否されました: (私は言及されたAPIの場所を列に入れました)
お客様のアプリは、App Store レビュー ガイドラインに準拠していない 1 つ以上の非公開 API を使用していることが判明しました。非公開 API の使用は許可されていません。これらの API が変更された場合、ユーザー エクスペリエンスが低下する可能性があるためです。
アプリで次の非公開 API が見つかりました:
- BuyFreeWinTicket_marshal___:numbers:os:, (私の内部コード)
- getCellValidationInfo_unmarshal___:ok:, (私の内部コード)
- AddAnimationPointForBall:nextX:nextY:forDuration:, (私の内部コード) UIViewController, (?)
- addSessionCookie:, (私の内部コード)
- CanDoAutomaticLogin、(私の内部コード)
- activeSessionIfExists (私の内部コード)
- AddSeperatorsToNumber:, (私の内部コード)
- addRequestToExtendTokenForSession:connection:, (私の内部コード)
- cworksインプレッション、(?)
- AddFilterWithInex:, (私の内部コード)
- ApplySuperKeypad (私の内部コード)
- applicationDidOpenURL:sourceApplication:, (私の内部コード)
- clearPersistedAppEventData、(?)
- canPresentMessageDialog、(?)
- applicationDidOpenURL:sourceApplication:, (私の内部コード)
- DeleteOldLogLines (私の内部コード)
- hideAllHUDsForView:animated:,(私の内部コード)
- ServerRegistrationResponseOk:, (私の内部コード)
- requestForCustomAudienceThirdPartyID:, (?)
- automaticallyNotifiesObserversForKey:, (?)
- addOrRemovePendingConnection:、(?)
- addHEADOperation:, (サードパーティ ASIHTTPRequest) NSOperationQueue, (サードパーティ ASIHTTPRequest) -DisplayUserSuspendedDialogWithMessage:ReleaseByCaptcha:CaptchaURL:AndReturnTo:, (私の内部コード)
- likeActionControllerForObjectID:, (?)
- _parseDialogConfigs:, (?)
- BackFromLottoLoginForNag:withEmail:andPassword:, (私の内部コード)
- cacheRefreshDelay、(?) FBViewController、(サードパーティ - FB SDK のように見えます)
- deleteUnitTestUser:accessToken:、(?)
- FathersAndMothersDisplayMothers:, (私の内部コード)
- addRoundedRectToPath:rect:radius:, (?)
- 接続:didFailWithError:、(?)
- createTokenFromDictionary:, (?)
- FBSDKInitializeWithLaunchData:, (サードパーティ - FB SDK のように見えます)
- fileExtensionsToHandleAsHTML、(サードパーティ ASIHTTPRequest)
- _analyticsParameters、(?)
- _copyValueForKey:fromDictionary:toDictionary:, (?)
- appCallFromApplinkArgs_v2:applinkArgs:createTimeUTC:originalQueryParameters:, (?)
- requestWithUserID:fields:dataSource:session:, (?) FBGraphObjectPickerViewController, (サードパーティ - FB SDK のように見えます)
- DisplayErrorConnectingToCheckoutServer、(私の内部コード)
- graphObjectWrappingDictionary: (?)
ソース コードで上記の API と同じ名前のメソッドを定義している場合は、Apple のプライベート API と競合しないようにメソッド名を変更して、今後の提出でアプリケーションにフラグが立てられないようにすることをお勧めします。
さらに、上記の API の 1 つ以上が、アプリケーションに含まれる静的ライブラリに存在する場合があります。ライブラリのソースにアクセスできない場合は、「strings」または「otool」コマンド ライン ツールを使用して、コンパイルされたバイナリを検索できる場合があります。「strings」ツールは、ライブラリーが呼び出すメソッドのリストを出力でき、「otool -ov」は、Objective-C クラス構造とそれらに定義されたメソッドを出力します。これらの手法は、問題のあるコードが存在する場所を絞り込むのに役立ちます。
このメッセージは、Apple が上記の API と同じシグネチャを持つプライベート API を持っていることを意味していますか? (これは、「-DisplayUserSuspendedDialogWithMessage:ReleaseByCaptcha:CaptchaURL:AndReturnTo:」をプライベート署名として使用することを意味します - それは不可能です)
どうすれば問題を解決できますか? 上記の API 名をすべて変更する必要がありますか?
問題を修正したことを確認するにはどうすればよいですか、それとも自分で同じエラーが発生する可能性がありますか (アプリ sccanner を使用してみましたが、プライベート Api が見つかりませんでした。文字列と otool を使用しようとしましたが、できませんでした何を探す必要があるかを理解する)
誰かがそれについて私たちを助けることができれば、それは非常に役に立ちます
サードパーティについて - FB SDK (ver 3.19)、ASIHTTPRequest を使用しています