breautek commented on issue #1434:
URL: https://github.com/apache/cordova-ios/issues/1434#issuecomment-2094351942

   > It seems that it's not related to the cordova-ios version after all, as I 
tried to revert to 6.3.0 and the same thing happens (although the splash screen 
is working, so there might also be a red herring). Is there a way to check what 
is the root cause of this issue?
   
   Like I said in my previous comment, it's an issue that has stumped me. I 
don't know why it occurs. I just know it sometimes occurs when restoring a 
platform. It's an issue that has happened to me on my work projects 
periodically since 4.x, which is about when I started using Cordova myself.
   
   >  did try to add each plugin one by one with cordova plugin add but nothing 
changed. Moreover, not even HTTP requests seem to work, and the splash screen 
is not showing (the app loads without error though, and I can see the landing 
page, but then it doesn't work properly due to all these native calls not 
working). Could all of this have something to do with the splash screen, or am 
I missing something?
   
   When it gets into this kind of broken state, this is kind of what I do (and 
hope it works):
   
   Disclaimer: Unsaved to the native project modifications might be lost 
following these steps.
   
   1. Make note of `cordova plugin ls` -- we will be nuking all plugins and if 
you happen to have a plugin installed, but not pinned in your package.json or 
config.xml, those plugins won't be restored automatically.
   2. Delete `platforms/` directory
   3. Delete `plugins/` folder. Doing this will ensure that all plugins will be 
refetched from the network, at the pinned version. If you have an updated 
version pin, but already have a copy (even of a different version) stored here, 
it will use the stored copy.
   4. Delete `node_modules/` folder
   5. delete `package-lock.json` or `npm-shrinkwrap.json`
   6. Run `npm install` to reinstall your dev dependencies.
   7. Run `cordova platform add ios` - pay attention to the plugin restore log 
mesages, if anything fails, at this point it's a good opportunity to 
investigate.
   
   On cordova-ios@7 specifically, there will be warnings "apple-ios version 
check failed", these warnings can be safely ignored.
   
   8. Assuming there isn't anything bad printed out during the platform add 
command, try building and deploying the app. At this point sometimes the build 
works as expected, sometimes despite the plugins being added, the runtime still 
can't find the plugin. Running `cordova plugin add ...` will state that the 
plugin is already added, but it seems to correct the bad state after building 
and redeploying.
   
   I know how ridiculous this sounds, but it's a series of steps that usually 
works for me whenever I do encounter this, as a workaround obviously. Not a 
solution.
   
   I don't think I've ever encountered this issue on the android platform, only 
when removing and re-adding the ios platform, so I do believe it's ios 
specific. I have different bundle ids for different environments, e.g. a dev, 
staging and production environment. Changing bundle ids requires removing and 
re-adding the platform and that's generally when the issue reproduces for me.
   
   > Is there a way to check what is the root cause of this issue?
   
   I don't really work on the cordova projects as much as I used to (someone 
else in my company does), but I'll try to remember to zip up my project the 
next time it does occur. So that I can investigate further off company time.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@cordova.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@cordova.apache.org
For additional commands, e-mail: issues-h...@cordova.apache.org

Reply via email to