This bundle is invalid - The Info.plist file for /Payload/MyAppName.app/Sticker Pack.stickerpack is missing or could not be read

Gag Baghdasaryan

Hope you are well. I want to add iMessage Stickers to my app. My app created in Android Studio using LibGDX/RoboVM. So, I can't add Stickers extension directly to my project. I have signed .ipa as output from Android Studio after building with RoboVM. I have created a single standalone project in Xcode with my app's bundle id, added the Stickers extension, then have done the following.

In the terminal

  1. Unzipped the .ipa using "unzip MyApp.ipa".
  2. Removed the _CodeSignature folder using "rm -rf Payload/MyApp.app/_CodeSignature/"
  3. Copied and Pasted the Stickers extension to the "Payload/MyApp.app/"
  4. Copied and Pasted the provisioning profile using "cp MyDistributionProfile.mobileprovision Payload/MyApp.app/embedded.mobileprovision"
  5. Signed again using "codesign -f -s "iPhone Distribution: MyCompany INC" --entitlements Entitlements.plist Payload/MyApp.app"
  6. Zipped using "zip -qr MyResignedApp.ipa Payload/".

After this, I tried to upload the MyResignedApp.ipa via ApplcationLoader from XCode and did not get any error during upload.

The problem is that I received the rejection email, where they said the following,

This bundle is invalid - The Info.plist file for /Payload/MyApp.app/Sticker Pack.stickerpack is missing or could not be read.

The Info.plist exists and here is it.

<?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" 
 "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>en</string>
<key>CFBundleDisplayName</key>
<string>new_stickers</string>
<key>CFBundleExecutable</key>
<string>$(EXECUTABLE_NAME)</string>
<key>CFBundleIdentifier</key>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>$(PRODUCT_NAME_)</string>
<key>CFBundlePackageType</key>
<string>XPC!</string>
<key>CFBundleShortVersionString</key>
<string>1.0</string>
<key>CFBundleVersion</key>
<string>1</string>
<key>NSExtension</key>
<dict>
    <key>NSExtensionPointIdentifier</key>
    <string>com.apple.message-payload-provider</string>
    <key>NSExtensionPrincipalClass</key>
    <string>StickerBrowserViewController</string>
</dict>

Any suggestions what I'm doing wrong? Many Many thanks.

dkimitsa

You `Copied and Pasted the Stickers extension to the "Payload/MyApp.app/" but extension has to be located in "Payload/MyApp.app/PlugIns".

MobiVM natively supports packing and signing extension out of the box. And it is not required to manual repacking/signing.

But you have to build app extension in Xcode within standalone project, then reference extension in robovm.xml like bellow:

 <appExtensions>
     <extension profile="3AED05A9-5F1F-4120-9276-11980B9C88EE">OneSignalNotificationServiceExtension</extension>
 </appExtensions>

To build it in Xcode easies way is to add extension target to empty project. Then build it separately from command line using xcode-build:

xcodebuild -project onesignal.xcodeproj -target OneSignalNotificationServiceExtension -configuration release -sdk iphoneos -arch arm64 -arch armv7 -arch armv7s BUILD_DIR=build BUILD_ROOT=build
xcodebuild -project onesignal.xcodeproj -target OneSignalNotificationServiceExtension -configuration release -sdk iphonesimulator -arch i386 -arch x86_64 BUILD_DIR=build BUILD_ROOT=build

and pack into fat binary using lipo.

lipo -create -output "OneSignalNotificationServiceExtension.appex/OneSignalNotificationServiceExtension" \
    "build/release-iphoneos/OneSignalNotificationServiceExtension.appex/OneSignalNotificationServiceExtension" \
    "build/release-iphonesimulator/OneSignalNotificationServiceExtension.appex/OneSignalNotificationServiceExtension"

Also in case of stickers extension RoboVM copies following to IPA:

  • MessagesApplicationExtensionSupport/MessagesApplicationExtensionStub
  • MessagesApplicationSupport/MessagesApplicationStub

Which might be missing when you do repacking manually.

There is a tutorial for MobiVM how to use app extension which provide more details about each step.

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Error Appstore connect : Missing Purpose String in Info.plist File

分類Dev

Cordova Info.plist NSCameraUsageDescription key is missing

分類Dev

このバンドルは無効です。/Payload/XXX.app/Sticker Pack.stickerpack の Info.plist ファイルが見つからないか、読み取れませんでした

分類Dev

This bundle is invalid - Your archive contains paths that are not allowed: ( "AppThinning.plist" )

分類Dev

App store Missing Purpose String in Info.plist error

分類Dev

App store Missing Purpose String in Info.plist error

分類Dev

gridExtra::read.tiff and missing resolution info

分類Dev

Localize info.plist file which has a different name?

分類Dev

Xcode Script - Get Bundle ID from build settings instead of info.plist

分類Dev

Is there an easy way to find packages that use permissions in flutter? Missing Purpose String in Info.plist submission problem

分類Dev

Could not load file or assembly with specific version missing

分類Dev

Python -- function to read file and sort info

分類Dev

Can I read my app extension's info.plist in my host app?

分類Dev

How to read array of custom objects from a plist file?

分類Dev

Invalid Bundle structure The binary file "WatchKitSupport/WK" is not permited

分類Dev

Xcode Buildtime Error: 'Unable to load content of file list:' ... / Info.plist '(in target' xxxx ')

分類Dev

htaccess redirect missing bundle.*.js version to bundle.js file

分類Dev

Localizing Info.plist variable with appended string

分類Dev

Info.plistのUIFileSharingEnabledキー

分類Dev

can i treat info.plist as an asset?

分類Dev

How to fix "invalid version" and "could not read Username" in "go get" of a private repository?

分類Dev

iOS 8 Swift Read Plist

分類Dev

LibreOffice on OS X: running soffice keeps saying no Info.plist or no NSPrincipalClass in Info.plist

分類Dev

read_mrz error : Could not find a format to read the specified file in mode 'i'

分類Dev

Parboiled2 causes "missing or invalid dependency detected while loading class file 'Prepender.class'"

分類Dev

電子ビルダーInfo.plist

分類Dev

info.plistのNativescriptiOSの質問

分類Dev

Could not load Nib in bundle - Wrong nibname in error

分類Dev

Recurring error: Google Maps bundle missing from 'Copy Bundle Resources'

Related 関連記事

  1. 1

    Error Appstore connect : Missing Purpose String in Info.plist File

  2. 2

    Cordova Info.plist NSCameraUsageDescription key is missing

  3. 3

    このバンドルは無効です。/Payload/XXX.app/Sticker Pack.stickerpack の Info.plist ファイルが見つからないか、読み取れませんでした

  4. 4

    This bundle is invalid - Your archive contains paths that are not allowed: ( "AppThinning.plist" )

  5. 5

    App store Missing Purpose String in Info.plist error

  6. 6

    App store Missing Purpose String in Info.plist error

  7. 7

    gridExtra::read.tiff and missing resolution info

  8. 8

    Localize info.plist file which has a different name?

  9. 9

    Xcode Script - Get Bundle ID from build settings instead of info.plist

  10. 10

    Is there an easy way to find packages that use permissions in flutter? Missing Purpose String in Info.plist submission problem

  11. 11

    Could not load file or assembly with specific version missing

  12. 12

    Python -- function to read file and sort info

  13. 13

    Can I read my app extension's info.plist in my host app?

  14. 14

    How to read array of custom objects from a plist file?

  15. 15

    Invalid Bundle structure The binary file "WatchKitSupport/WK" is not permited

  16. 16

    Xcode Buildtime Error: 'Unable to load content of file list:' ... / Info.plist '(in target' xxxx ')

  17. 17

    htaccess redirect missing bundle.*.js version to bundle.js file

  18. 18

    Localizing Info.plist variable with appended string

  19. 19

    Info.plistのUIFileSharingEnabledキー

  20. 20

    can i treat info.plist as an asset?

  21. 21

    How to fix "invalid version" and "could not read Username" in "go get" of a private repository?

  22. 22

    iOS 8 Swift Read Plist

  23. 23

    LibreOffice on OS X: running soffice keeps saying no Info.plist or no NSPrincipalClass in Info.plist

  24. 24

    read_mrz error : Could not find a format to read the specified file in mode 'i'

  25. 25

    Parboiled2 causes "missing or invalid dependency detected while loading class file 'Prepender.class'"

  26. 26

    電子ビルダーInfo.plist

  27. 27

    info.plistのNativescriptiOSの質問

  28. 28

    Could not load Nib in bundle - Wrong nibname in error

  29. 29

    Recurring error: Google Maps bundle missing from 'Copy Bundle Resources'

ホットタグ

アーカイブ