ios - 申請 - プロビジョニングプロファイル




iOSアプリをApp StoreにアップロードするときにXcodeがフレームワークのバンドルIDを一致させようとしています (5)

App Storeにアップロードしようとすると次のエラーが表示され、この問題が発生しました。

iTunes Store操作が失敗しました。

適切なアプリケーションレコードが見つかりませんでした。 バンドルID 'orgを確認します。 cocoapods。Alamofire 'が正しい

アップロード(Cocoapodsを使っている間に)しようとしたときに遭遇し、修正を見つけることができなかったときは、Cocoapodsをプロジェクトから完全に削除し、手動で各ポッドをフレームワークとして追加しました。

そして、...... App Storeへのアップロードは、基本的に同じエラーで失敗しました! 🤔

iTunes Store操作が失敗しました。

適切なアプリケーションレコードが見つかりませんでした。 バンドルID 'orgを確認します。 alamofire .Alamofire 'は正しいです

したがって、Xcode自体のフレームワーク使用に関連するエラーである可能性があります。

これがCocoapodsによって必ずしも引き起こされていなかったことを知り、私たちはCocoapodsを使い続けることに決め、これを修正するために以下の手順を思いつきました。

修正:

私たちのプロジェクトには2つのターゲットが含まれています(ユニットテストのターゲットを無視するなど)。 1はアプリケーション( MyApp )に、もう1つはネットワーク層と他の非アプリケーション固有の機能( MyAppKitと呼ぶ)を含んでいます。

  1. MyAppのInfo.plistCFBundlePackageTypeBundle OS Type codeも呼ばれる)を追加し、 APPL設定します。
  2. プロジェクトMyAppとターゲットMyAppの両方がビルド設定をAlways Embed Swift Standard LibrairesYes設定していることを確認します。
  3. ターゲットのMyAppKitにビルドの設定が[ Always Embed Swift Standard LibrairesNo Always Embed Swift Standard Libraires ]になっていることを確認します。

それでも何が起こっているのかをまだ見ていますが、これは現在これを経験している人にとっては便利かもしれません。

最初のiOSアプリを4ヶ月間開発したら、 App Storeに提出することになります。 私はiTunes Connectでアプリケーションを作成し、すべての詳細を入力し、 ConnectXcode両方で正しいBundle ID設定しました。 しかし、私はこの奇妙な問題を解決しようと最後の3日間に苦労しました。 xcodeがメインのアプリではなく、 Cocoapodsフレームワークをアップロードしようとしているようだ。

アーカイブ後、私はWindow > Organizer > Validate...に行きました。 次の画面が表示されます。

エラー:

(googlersの場合:適切なアプリケーションレコードが見つかりませんでした。バンドル識別子 ' org.cocoapods.Alamofire 'が正しいことを確認してください)。

エラーメッセージは、自分のバンドルではなく、フレームワークの名前に従ってBundle IDを照合しようとしていることを示します(例: com.organization.AppName )。 私はどこでも答えを見つけることができません。 私は自分のPodfile (use_frameworks!を持っています!)と私の異なるconfの組み合わせで次のことを試みましたが、成功しませんでした。

post_install do |installer|
  installer.pods_project.targets.each do |target|
    target.build_configurations.each do |config|

      config.build_settings['EXPANDED_CODE_SIGN_IDENTITY'] = ""
      config.build_settings['CODE_SIGNING_REQUIRED'] = "NO"
      config.build_settings['CODE_SIGNING_ALLOWED'] = "NO"
    end
  end
end

質問:

  • 私が行っているステップは正しいのですか?
  • なぜXcodeはメインアプリケーションではなく、 framework's bundle idにマッチさせようとしていますか?
  • 最終的に私のアプリを提出するために、この問題をどのように回避することができますか?

編集1:私はこの問題を乗り越えることができましたが、それは後に別の問題を引き起こしたので、まだ解決策はありません。 基本的に、Alamofire Pod(Cocoapodsから)はバンドルID com.xxx.Alamofireます。 私はcom.xxx.myAppNameに変更しcom.xxx.myAppName 。 それで、私はApp Storeに送ることができましたが、次のエラーのためTestFlightから自分のiPhoneにアプリケーションをインストールすることはできません:

4/22/16, 12:50:29 AM itunesstored[124]: [ApplicationWorkspace]: Failed to install application: com.xxx.myAppName; /var/mobile/Media/Downloads/5927832272594571027/-6969961974973998640; Error Domain=LaunchServicesError Code=0 "(null)" UserInfo={Error=DuplicateIdentifier, ErrorDescription=The parent bundle has the same identifier (com.xxx.myAppName) as sub-bundle at /private/var/installd/Library/Caches/com.apple.mobile.installd.staging/temp.IVHCuO/extracted/Payload/MyApp.app/Frameworks/Alamofire.framework}

あなたのapptitleに通常のスラッシュ「/」がある場合、xcodeは署名に失敗し、最初のフレームワークorg.cocoapodsをアップロードしていると思います。

私がしたこと - スラッシュを同様のシンボルに変更/

(最初のスラッシュ、次の1つ - 他のユニコード記号://)


このアプリケーションをiTunes Connectに送信しようとすると、この正確なエラーが発生しました:「適切なアプリケーションレコードが見つかりませんでした。バンドル識別子 'org.cocoapods.Alamofire'が正しいことを確認してください。

私は最終的にBundle OS TypeコードAPPLに変更して修正しました。


それは私のために完璧に動作します。 私はInfo.plistを "ソースコード"として右クリックして開き、 <key>CFBundlePackageType</key>を文字列APPLに変更しました

<key>CFBundlePackageType</key>
<string>APPL</string>

私の場合は、PodsのサブプロジェクトからProvisioningプロファイルの設定を削除する必要がありました





bundle-identifier