Salut les gars: Je me mets à créer une application web hors ligne. J'espère qu'il peut être exécuté dans UIWebView (iOS) ou WebView (Android). Je ne sais pas si ça marche. Les fichiers html et javascript fonctionnent bien maintenant, mais mes applications ont besoin de traiter certains fichiers binaires que je définis moi-même, et ces fichiers sont créés de manière dynamique afin qu'ils ne puissent pas être mis en cache hors ligne. Si les pages Web sont chargées dans le navigateur Web du serveur Web, je peux lire les fichiers binaires via XMLHttpRequest. Mais si le navigateur ouvre les pages en tant que fichiers locaux, les fichiers binaires ne peuvent pas être lus via le protocole http et ne peuvent même pas être accédés par le javascript, je suppose pour des raisons de sécurité. Je suis coincé ici, pourriez-vous me donner quelques conseils sur la façon dont javascript dans l'application web hors ligne créer/lire/écrire des fichiers locaux? J'ai essayé d'utiliser <img src="my_data_file"/>
, et espère que je peux obtenir les données brutes de l'élément, mais pas moyen. Si le javascript ne peut pas le faire, existe-t-il une solution de contournement pour utiliser les balises html existantes pour lire les données brutes?l'application web hors connexion peut-elle accéder au fichier local?
Répondre
Il existe un stockage local et fonctionne comme une base de données. Voici un joli tutoriel.
http://html5tutorial.net/tutorials/working-with-html5-localstorage.html
Vous devez charger les images dynamiquement en utilisant si l'objet image(). Le navigateur devrait mettre en cache les images en mode hors-ligne si ...
Cette question semble assez similaire à ce que vous cherchez:
Can you use HTML5 local storage to store a file? If not, how?
Merci d'avoir répondu. Mais mes fichiers seront plus grands que 5M, et je pensais qu'ils ne peuvent pas être stockés dans le stockage local comme une valeur-clé. L'API FileSystem n'est pas prise en charge dans Safari, donc je suppose que UIWebView ne prend pas en charge l'API FileSystem. – icespace
Ce sont des fichiers assez gros. Le cache ne peut pas être accédé directement, donc je pense que vous n'avez pas de chance, à moins que vous n'ayez envie d'encoder vos données dans base64 et de les réencoder quand vous les ressortiez, mais vous atteindrez toujours la limite. Il n'y a pas d'autre moyen que je connaisse pour accéder au stockage local. – tjameson
@tjamson: Peut-être que vous avez raison, je cherchais depuis longtemps, rien trouvé. Je suppose que j'ai besoin de code natif pour aider l'application web hors ligne. Mais les versions iOS et Android sont nécessaires. – icespace
-je utiliser le Web SQL db (qui peut avoir un max stockage de 50 Mo sur iOS, taille variable sur Android) pour le stockage d'images locales. Je sérialise les images en base64 (côté serveur, mais aussi côté client) et les stocke dans le sqlite db sous forme de texte. Ce n'est pas un stockage illimité, mais il bat 5 Mo.
Est-ce que la plateforme Android supporte sqlite db? Ça semble intéressant. – icespace
Oui, mais la taille limite dépend de ce qui est disponible sur l'appareil. –
Vous voudrez peut-être jeter un oeil à ce projet http://www.phonegap.com/ comme une solution possible à long terme pour le problème d'accès aux fichiers de périphériques. Qu'est-ce que ce système est de vous fournir une API javascript pour certaines des fonctionnalités matérielles réelles des périphériques, y compris éventuellement le fichier IO vous auriez besoin de manipuler des fichiers volumineux. Il s'agit d'un projet open source qui existe depuis un certain temps, mais qui comporte des compromis, comme si vous deviez réellement déployer un binaire séparé sur chaque système d'exploitation cible. : -/
- 1. Can Local UIWebViews Accéder au Web?
- 2. comment accéder au serveur web local
- 3. Win32 API LogonUser Accès hors connexion au compte local
- 4. Application Web HTML5 hors connexion
- 5. Outlook Addin accéder au destinataire Exchange en mode hors connexion?
- 6. openwrap mode hors connexion ou local uniquement
- 7. Accéder au site Web hébergé sur vagrant local vm
- 8. Accès au fichier local dans un WebView
- 9. Accès au fichier local via l'application Web
- 10. Autoriser une application Web à accéder à un fichier local
- 11. Application web Django - comment accéder au disque dur local?
- 12. Windows Mobile Emulator connexion timeout accès au service Web local
- 13. Comment accéder au fichier CSS local depuis Alfresco Javascript?
- 14. FDT: Flex et ne peut pas accéder au fichier local
- 15. Application Web hors connexion HTML5 sur Android
- 16. navigation hors connexion de page Web
- 17. Accès swf local au site Web distant
- 18. Utilisation d'ajax pour accéder au Web à partir du fichier local
- 19. Accéder au service Web .NET à l'intérieur d'un réseau local dans une application web android
- 20. Connexion de Visual Studio2010 au Sharepoint local
- 21. Application iPad ou site Web hors connexion
- 22. Accéder à un fichier local dans Silverlight
- 23. SCP, téléchargez un fichier du site Web au PC local
- 24. Formulaire de connexion PHP sur le site local pour accéder au site distant asp.net
- 25. Application mobile Connexion à mon serveur Web local
- 26. Pour accéder au fichier .UDL de la connexion SqlClient
- 27. PHP SQL Server Connexion au local
- 28. Accéder au Web SANS Webview
- 29. Connexion au site Web
- 30. FPGA Connexion au Web
Je ne reçois toujours pas le flux de travail de fichiers. D'abord vous dites qu'ils sont créés dynamiquement, ensuite vous voulez les charger localement. Qu'est ce que c'est maintenant? Le chargement d'un fichier local sur votre disque dur n'est pas la même chose que l'utilisation d'un site Web en mode déconnecté btw. – DanMan