iphone offline application runs fine from safari but not from desktop - iphone

I made a webapp that uses a manifest file to work offline.
The files are "text/cache-manifest" (due to a .htaccess file, HTML5 Boiler Plate) and in the console of Google Chrome I check all files are loaded properly.
When i test my application without Internet in a PC or an ipad (iOS5) (both Safari and desktop icon) all works fine. When I start my application on a iphone (iOS 6) from Safari web browser without internet all seems to work fine, but when you start the webapp clicking on desktop I recieved the message I can't open the application without Internet.
I tried with the names "cache.manifest" and "manifest.appcache" for the manifest file.
Anyone can point me to the right direction? Thanks!

Related

How can I debug a Flutter Web App on Safari using the inspector?

I am using flutter to write a simple app, everything works fine on Android, iOS, and Chrome. (I've also tested on Firefox & Brave Browser, all's well).
However, on Safari (Mac & iOS), the flutter app gets stuck on the index.html file and does not load the PWA.
The error from the console on Safari Inspect
How can I know what the anonymous function in js_helper is, or what main.dart.js:57063 refers to?
Is there any way of building for web without minifying?
Has anybody encountered a scenario where everything works on all platforms except Safari?
Flutter Doctor
Log from console when running on local server
debug for safari is not supported yet
but for anyone with the same problem you could solve it by running the app on release mode
flutter run -d chrome --release
after that open with the same port on safari and everything should be fine
You won't be able to debug it directly on Safari, but if you just want to test your app in safari with localHost, you can use these steps :
Enable 'developer' menu in Safari from settings of Safari :
Then check on 'Disable Cross-Origin restrictions"
Now after running release version of web app in chrome, use same app's address in Safari, you will be able to test it. Ex. http://localhost:51155/
to run in release mode : flutter run -d chrome --release
Hope this helps!

Debugging a website on iPhone Safari

I have a website that loads perfectly on various browsers on Windows Laptop, Android and Fire OS. The same site refuses to load on a Safari on an iPhone.
It is an angular application. While I see the index.html load, the angular does not load. I need to debug to figure out what is happening. I only have a Windows 10 laptop. How can I debug the website running on Safari on an iPhone from my Windows 10 laptop?
If you only have a windows laptop, you will need an online service like browserstack. There is no way around this. Physical Iphones can only be debugged with Safari, running on physical Mac desktops or laptops. Browserstack is a subscription service, but it will be a lot cheaper than buying the hardware. (No affiliation)
Follow below link
Building and debugging websites and web applications for mobile devices can be a hassle. On the desktop we have powerful debugging tools; most browsers have a web inspector of some kind. But we don’t have those tools for devices like the iPhone and iPad … that is, until now!
https://webdesign.tutsplus.com/articles/quick-tip-using-web-inspector-to-debug-mobile-safari--webdesign-8787

Troubleshoot Android 4.3 webview within an app that requires up-to-date Google Play services

I need to troubleshoot an issue happening in a webview running within my app. This issue only occurs on Android versions lower or equal to 4.3. My app requires an up to date version of Google Play services.
In order to troubleshoot my webview, I usually can run my app under the Android Emulator (with the latest version of Android), then connect to the web view via Chrome (using chrome://inspect) - the web view appears in Chrome and I'm able to browse the DOM and debug.
To run the app under 4.3, I've created (under AVD) a new device from an existing device definition,
then picked the target Google APIs (Google Inc.) - API Level 18. I've then installed my app, but when trying to run it, I get the error message "This app won't run unless you update Google Play services.". There's an "Update" button on the previous dialog, but nothing happen when clicking on it.
I then tried to debug my issue using Genymotion. I've created a device under 4.3, followed these instructions to flash my device with the latest Google Play services and installed my app. I can now run the app and reproduce the issue within this simulated environment.
The trick now is to be able to connect to the web view from my local Chrome browser. I've enabled remote debugging as described here. Now my device appears in Chrome, but the web view is not showing up in the inspector. Similarly, if I open a new tab under the native browser, it won't show up in the remote inspector. If I open a new tab under Android Chrome though, I can see it showing up under my remote Chrome inspector.
I can see two way moving forward and successfully accessing to the DOM of my webview:
Fixing the "Update" issue under the Android Emulator running 4.3
Or
Connecting to my web view from my Chrome inspector while running the app under Genymotion
Any idea on how to solve one of these two problems?
I have been using weinre for sometimes. it's a pretty good tool to debug webview for android 4.3 and lower. It provides almost same interface as chrome debugger.
All you need to do are:
Install weinre
sudo npm -g install weinre
Client side:
Insert the following code to your webpage <head> section.
Note: it's better to put it at end of <head> section, otherwise there will be some strange errors and debugger won't show up.
<script src="http://<your server ip here>:8081/target/target-script-min.js"></script>
Server side
weinre --boundHost -all- --httpPort 8081
Debugger
open the debugger tool from weinre from your desktop browser:
http://localhost:8081/client/
Finally,
select any target in Targets part and then start debugging.
Remote debugging web views only works on devices with android 4.4 and above.
have a look at this :
https://developer.chrome.com/devtools/docs/remote-debugging

How to get Samsung Smart TV Emulator to see my app?

I'm just getting started on Samsung Smart TV development, and so far my first baby step has been a big failure.
I am running Linux, and because I already have Eclipse installed and configured for Android development, I haven't had success in getting the Smart TV SDK installed and working. However, encouraged by How to build & deploy a Samsung SmartTV app without the IDE (e.g: on Linux), I have decided to go forward without it.
I do have the VirtualBox emulator running, however. So right now, I have built a basic app from the example here:
http://www.samsungdforum.com/upload_files/files/guide/data/html/html_2/getting_started/coding_js.html
And would like to see if I can just get it to start up on my emulator.
If I understand correctly, I need to take the directory structure of my app (with config.xml, index.html, and the Resources, JavaScript and CSS folders), package it into a .zip, and drop it in the "Apps" folder I have shared with the emulator. But when I do that, if I go to the emulator, refresh it, and hit "Open App", I am presented with an empty App list.
I know that the emulator is seeing the Apps folder, because if I put a subdirectory in it, then that directory shows in the Apps list in the emulator. But it's not showing the .zip file for my app.
I have been scouring the web for any useful information, but all tutorials just say something along the lines of "now test the app in your emulator to make sure it works. Now on to deployment...". Nobody gives any information on how to test the app in the emulator.
Can someone please shine some light on this for me?
Unzip your app in the app folder it should look like this
Samsung TV SDK 4\apps\yourapp\index.html
Samsung TV SDK 4\apps\yourapp\config.xml
Samsung TV SDK 4\apps\yourapp\other files and folders

Debugging Servlets in Eclipse

I have created a web application using the Google Web Toolkit that is able to receive some data by a mobile client via Http Post. The transmission of the data works well and also the server / client communication using GWT RPC is no problem at all.
However, I need to debug the webserver when receiving data from the mobile device. As I am using Hibernate and MySQL within the web application I do not use the Google App Engine. So if I deploy the web application in local host mode it is only accessible on the localhost:8888.
Now, if I send data from the mobile phone, I have to send it to the locally assign IP address as the localhost of the mobile phone emulator is not the localhost of the computer, where the web application is running. To ensure that everything works, I tried to do some posts outside the emulator (on the machine the emulator is running on). This works, but how can I post from the emulator to my web application?
How can I get access to debug my system? I've already tried to deploy the final application to a tomcat server and use remote debugging, but that fails too.
Best regards,
Florian
Well if I understand your question correctly, the real problem isn't debugging the app on the servlet, the real problem that you're looking at is debugging from a mobile phone. When the mobile phone hits your local network (I'm guessing you're pointing at 192.168..?) you are accessing the compiled GWT code that does not communicate with the debugger.
Put another way, when you debug locally using a browser, you are actually not running compiled GWT code, but instrumented code that is executed with the GWT Debugging Plugin, that happens to work exactly like compiled GWT code. (mostly). So while your local version has "?gwt.codesvr=127.0.0.1:9997" or the like, your mobile phone version cannot do the same, and cannot thus communicate with the debugger.
The best that I've been able to do is to use logging extensively. If you're using an iOS device and change the settings are your safari, it can output logs for you from mobile safari. Also, if you're using the Android debugger with a WebView app, you can attach a listener for log messages and then ferry them on to the ADB and view those in Eclipse. Definitely not as good as a debugger, but that's the best I've come up with so far, and if anyone has a better solution I would love to know it :)
Hope that helps!