Buduję aplikację HTML / JS, w którą będę wbudowywaćaplikacja PhoneGap IOS / Android, aby pomóc znajomej w wypełnianiu formularzy ankiet na jej smartfonie, przechowywaniu ich w telefonie, a następnie przesyłaniu na serwer, gdy uzyska zasięg 3G.
Mój problem w tej chwili polega na tym, że chcę się przywiązaćzdjęcia do tych formularzy. Mój plan zakładał użycie jquery do serializacji ścieżki do pliku, zapisanie go w localstorage, a następnie przesłanie później przez ajax. Jednak wydaje się, że to nie działa.
Czy istnieje sposób na zapisanie ścieżki do obrazu, a następnie możliwość przesłania go później? czy muszę jakoś przechowywać cały plik?
Odpowiedzi:
1 dla odpowiedzi № 1Z dokumentacji Phonegap:
navigator.camera.getPicture (cameraSuccess, cameraError, [cameraOptions]);
Wartość zwracana zostanie wysłana do funkcji cameraSuccess w jednym z następujących formatów, w zależności od cameraOptions określasz:
Ciąg zawierający obraz fotograficzny zakodowany w standardzie Base64.
Ciąg reprezentujący lokalizację pliku obrazu w pamięci lokalnej (domyślnie).
Byłoby prościej po prostu umieścić base64 w plikulocalstorage i pobierz go w momencie przesyłania, ale jeśli wolisz, powinieneś być w stanie zapisać ścieżkę, a następnie pobrać z niej dane i przesłać, gdy masz połączenie.
[EDYTOWAĆ]
Nie myślałem o problemie wskazanym przez @jaay w komentarzach. A co jeśli plik zmieni się później? Może po prostu lepiej przechowywać dane base64.