J'ai pré-compilé mon bundle react-native et l'ai téléchargé sur mon serveur (fausse url) :
Pour iOS, je peux simplement créer une vue en utilisant cet emplacement et cela fonctionne très bien :
jsCodeLocation = "http://my-bundle-server.com/index.android.bundle.js";
RCTRootView *rootView = [[RCTRootView alloc]
initWithBundleURL:jsCodeLocation
moduleName:@"MyCoolComponent"
initialProperties:nil
launchOptions:launchOptions];
Avec Android, c'est une autre histoire, je n'ai pas trouvé de moyen de définir ce chemin pour un bundle distant. J'ai trouvé la documentation de l'outil ReactNativeHost
et a essayé de régler le getJSBundleFile
mais cela me donne "Impossible de charger le fichier". http://....js ' :
Renvoie un chemin personnalisé du fichier de regroupement. Ceci est utilisé dans les cas où le doit être chargé à partir d'un chemin personnalisé. Par défaut, il est chargé à partir des actifs Android, à partir d'un chemin spécifié par {@link getBundleAssetName}. ex. "file://sdcard/myapp_cache/index.Android.bundle"
Il semble que cela ne fonctionne pas avec les sites distants. Il convient de mentionner que je crée mon hôte dans l'application afin de pouvoir le réutiliser dans différents fragments de mon application.
Comment puis-je définir l'emplacement du bundle pré-compilé à charger pour une application Android ?