Ich würde versuchen " Wie generiere ich eine .ipa-Datei für Reacti-native? " Aber ich kann keine .ipa-Datei bekommen.
In jeder Cloud erklären Sie, wie Sie eine .ipa-Datei erhalten.
So erstellen Sie eine .ipa-Anwendung für React-native-ios:
".App" -Datei abrufen:
Befehl: react-native run-ios --configuration=release
Dateipfad ".app":
Build/Products/Release/"<Your_Filename>.app"
Konvertieren Sie .app
in .ipa
:
ein. Ordner Payload erstellen.
b. Fügen Sie die .app
-Datei in den Payload-Ordner ein.
c. komprimieren Sie den Payload-Ordner.
d. Ändern Sie den gewünschten Namen und setzen Sie die Erweiterung als .ipa
.
Sie können diese Befehle im Verzeichnis ios ausführen.
xcodebuild clean archive -scheme <Scheme> -configuration Release -archivePath ../builds/<App>.xcarchive DEVELOPMENT_TEAM=<DevTeam> PROVISIONING_PROFILE=<PROVISIONING_PROFILE> CODE_SIGN_IDENTITY=<CODE_SIGN_IDENTITY>
xcodebuild -exportArchive -archivePath ../builds/<App>.xcarchive -exportPath ../builds/ -exportOptionsPlist ./iosExportOptions.plist
und iosExportOptions.plist kann so etwas sein
<?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>method</key>
<string>app-store</string>
<key>teamID</key>
<string>{TEAM_ID}</string>
</dict>
</plist>
Sie können auch Fastlane auschecken. https://fastlane.tools/
OR
Sie können alle Details wie DEVELOPMENT_TEAM usw. in Xcode und Product -> Archive https://developer.Apple.com/library/content/documentation/IDEs/Conceptual/AppDistributionGuide/TestingYouriOSApp.html eingeben
Löschen Sie das localhost-Element aus der info.plist
App-Transport-Sicherheitseinstellungen -> Ausnahmedomänen
Ios bündeln
react-native bundle --entry-file index.js --platform ios --dev false --bundle-output ios/main.jsbundle --assets-dest ios
In Xcode
Produkte-> Schema-> Schema bearbeiten -> Build-Konfiguration in RELEASE
ändern
Im AppDelegate.m
Ersetzen
jsCodeLocation = [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index" fallbackResource:nil];
mit
#ifdef DEBUG
jsCodeLocation = [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index" fallbackResource:nil];
#else
jsCodeLocation = [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"];
#endif
Gerät wechseln -> Allgemeines iOS-Gerät
Produkt -> Reinigen
Produkt -> Build
.app
Datei finden Sie unter
~/Library/Developer/Xcode/DerivedData/<app name>/Build/Products/Release-iphoneos/<appname>
Ordner Payload erstellen.
Einfügen .app
Datei in den Payload Ordner.
Komprimieren Sie den Payload-Ordner.
Ändern Sie den gewünschten Namen und setzen Sie die Erweiterung als .ipa