I'm trying to add iFrame to my Next.js app. It works well on Window, Android; however, on Apple devices, it shows server error: 500 Internal Server Error or Your sessions is not available on the server side anymore.
As far as I have tested, this happens on:
Phone browsers (Safari, Chrome)
Mac Safari
Chrome on Mac is fine
Does anyone have a fix?
I can't copy on Browser Stack, so here is the screenshot.
I guess the problem is that Apple block cookies. Anyway to bypass this?
Related
My app, Python/Flask and vanilla Javascript, is running just fine on my Mac's browsers and I have previously also been able, making sure I'm on the right network, to test my app on Safari on my iPhone 6. I did this by pointing my mobile browser to the IP given by ifconfig on my Mac and correct port. However, after adding Flask-SocketIO, which should allow for Websocket support or atleast long polling, I am no longer able to test my app on my iPhone. All is still fine on Macs browsers but all I get on my iPhone is "Safari could not open the page...".
My app is served over port 5000 but Ive also tried over 80 without any success. I've cleared cache and cookies as well, of course.
Has anyone experienced something similar or have any idea what is going on?
Mobile Safari needs a Content-Security-Policy meta tag. See more at https://developers.google.com/web/fundamentals/security/csp/
I have a web application that makes a lot of ajax calls and opened up headers to allow cross domain.
Failed to load resource: net::ERR_INSECURE_RESPONSE
I get this error in the console when I try to call on android devices. When I test on apple devices and browsers, it works fine.
My initial guess is that despite it only happening in Android, it's still a certificate issue but wanted to get thoughts on why this is happenning on Android only and not iOS and desktop.
I'm trying to use Chrome's support for remote debugging with my Android device. I've been successful doing this many times, even though it is a bit tricky to setup up.
(I need 'port forwarding' and 'virtual host mapping' so my device can access domain names on my local server.)
The problem is that (today) chrome://inspect shows the tabs on my device for only a second, then hides them, then shows them again, then hides them...
When Chrome hides all the tabs on my device, the following message appears:
Pending authentication: please accept debugging session on the device.
Bad Blink
Good Blink
I see no notification on my device that I can 'accept'.
Even stranger, if I am quick to click on my host, I actually seem to be able to able to use the dev tools for the device like in previous successful situations.
Why is chrome://inspect blinking and how can I fix it?
My setup
Device: Android 5.0 Galaxy S4 for AT&T, with Developer options enabled.
Device's wifi settings require Proxy, with info for Charles running on host.
Device connected via USB.
chrome://inspect has Port Forwarding enabled.
Chrome: Version 44.0.2403.157 m.
Android bridge performed by starting Android Studio (version 1.3.1).
Thanks to #SOreadytohelp for the helpful comment.
I borrowed this from the chromium bug report:
Downgrading Android SDK Platform-tools from revision 23 to revision 21 will solve the issue
Same behavior here: neither Galaxy S4 nor Galaxy S6 Edge with Lollipop were available on the chrome://inspect tab. I develop an Ionic/Cordova app and downgrade isn't an option. But if you download latest version of Chrome Canary the device is available to inspect and I can debug again.
You just have to upload your chrome for android, and it will work.
I also came across this problem, but as I updated my chrome for android, the problem got sorted out and now it is working fine.
I have a project involving Google Maps API and some JavaScript codes. The page is build upon jQuery Mobile. I have the web page tested on Chrome, FireFox, Opera and IE on desktop, and on various mobile phones as well.
It doesn't work only on iPhone (4, nor 5). I mean, it's all good under Android, WP8, Chrome iPhone simulator, and even working perfectly on an iPad (Air, if matters).
It appears to be that Google Maps API is not loaded at all. It should be initialized after page load, and then show a map inside the page. But there's nothing. Also there's no alert about querying user's location, which does happen when using an iPad.
The safari on iPhone is the same version as that on my iPad, OS 7.0.4, Apple WebKit 537.51.1, Safari 9537.53. The devices are connected to the same WiFi network. Due to lack of a Mac I can't use the remote debugging function right now.
Any brief ideas about what's wrong with the application? I suspect it's inside JavaScript but I could be wrong.
Thanks.
I've found the problem and solved it.
It is because the location service is disabled for safari (by default), on iPhone. However it's enabled on my iPad (not sure if it's default) so that I get different reaction from the location service API.
I have to put an alert message for iOS users when detecting that location service is disabled. After it's enabled in the privacy settings on the device, the application works perfectly on all devices.
The patch code is here for those who need.
I'm trying to debug a problem that only occurs when I access a mobile website from a mobile browser. I strongly suspect that the root cause of the problem is due to caching that occurs when you access the same page several times.
I can reproduce the problem consistently when I access the page from my Android phone, but if I use a desktop browser the problem never occurs.
Because I can't use any developer tools on my Android phone, I really need to reproduce the problem from a desktop browser, so that I've some way of debugging into it. I've already tried using both Firefox and Chrome with an appropriate setting of the User-Agent header (so that the mobile version of the site is displayed), but that doesn't work.
Is there a better way to emulate the behaviour of a mobile browser from the desktop, in a manner that allows the client-side code can be debugged? FWIW, I'm fairly confident that I could also reproduce the problem on an iPhone, but don't have one available.
You can use a debugger on your phone, using chrome debugger.
Nowadays, you can just navigate to chrome://inspect/#devices after plugging your device in.
If that doesn't work, you can use the old method:
Connect your mobile device to the host using a USB cable
On the mobile device, launch Chrome. Open Settings > Advanced > Developer tools and check the Enable USB Web debugging option
Issue the following command in the console on your host machine to enable port forwarding:
adb forward tcp:9222 localabstract:chrome_devtools_remote
Open desktop Chrome and navigate to localhost:9222
Choose the page you need to debug
You can now start debugging and profiling mobile content in the Developer Tools on your desktop