0

私たちのアプリは次のメッセージでアップルによって拒否されました: (私は言及された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 クラス構造とそれらに定義されたメソッドを出力します。これらの手法は、問題のあるコードが存在する場所を絞り込むのに役立ちます。

  1. このメッセージは、Apple が上記の API と同じシグネチャを持つプライベート API を持っていることを意味していますか? (これは、「-DisplayUserSuspendedDialogWithMessage:ReleaseByCaptcha:CaptchaURL:AndReturnTo:」をプライベート署名として使用することを意味します - それは不可能です)

  2. どうすれば問題を解決できますか? 上記の API 名をすべて変更する必要がありますか?

  3. 問題を修正したことを確認するにはどうすればよいですか、それとも自分で同じエラーが発生する可能性がありますか (アプリ sccanner を使用してみましたが、プライベート Api が見つかりませんでした。文字列と otool を使用しようとしましたが、できませんでした何を探す必要があるかを理解する)

誰かがそれについて私たちを助けることができれば、それは非常に役に立ちます

サードパーティについて - FB SDK (ver 3.19)、ASIHTTPRequest を使用しています

4

0 に答える 0