I'm going to convert sift 2.2 to swfit 3.0 and uploading to itunes store then get one error.
I'm so tired with this error:-
ERROR ITMS-90171: "Invalid Bundle Structure - The binary file 'ideaPitch.app/libswiftRemoteMirror.dylib' is not permitted. Your app can’t contain standalone executables or libraries, other than the CFBundleExecutable of supported bundles. Refer to the Bundle Programming Guide at https://developer.apple.com/go/?id=bundle-structure for information on the iOS app bundle structure."
I have try some solution like this question but did not get proper result.
Any one can hlep me out.
I assume that you're generating the IPA on the command line.
Your best option is to simply use the Xcode7/8 default way to generate an IPA file:
xcodebuild -scheme $SCHEME clean archive $ARCHIVE_PATH
xcodebuild -exportArchive -archivePath $ARCHIVE_PATH -exportPath $IPA_PATH -exportOptionsPlist $EXPORT_PLIST
This approach will automatically take care of removing the libswiftRemoteMirror.dylib
from the resulting IPA file.
Alternatively you will have to remove the dylib on your own. You'll have to do it after creating the xcarchive but before exporting it to an IPA file: rm -rf $APP_PATH/libswiftRemoteMirror.dylib
EDIT
In case you can't rebuild the IPA on your own and just want to remove the libswiftRemoteMirror.dylib
from it, you'll have to resign
it: unzip the IPA, delete the dylib, re-codesign the bundle and zip it together again:
unzip AppName.ipa -d IPA
cd IPA
rm -rf Payload/$APP_NAME.app/libswiftRemoteMirror.dylib
codesign -vfs '$IDENTITY_NAME' Payload/$APP_NAME.app
zip -r --symlinks New_IPA.ipa *
Replace $APP_NAME with the name of your App bundle. Replace $IDENTITY_NAME with the name of the codesign identity used to originally sign the app. If unknown, you display it with codesign -dvv Payload/$APP_NAME.app 2>&1 | grep Authority | head -1 | cut -d= -f2
.
The matching Certificate and Private Key must be present in your keychain for a successful resign. If your app uses special entitlements for push, associated domains etc., you'll have to pass a proper --entitlements
param to the codesign command above.