2013-11-23 1 views
5

Я пытаюсь получить свой WebApp для работы на своем iPad (iOS 7). По всем исследованиям я сделал, похоже, Вам необходимо включить куки специально (невесть почему!)Включить cookies для iOS 7 в PhoneGap Build

Я нашел этот пост на SO:

How to enable cookies for Android phonegap 1.8.0 app?

Thats все хорошо , кроме того, что я использую PhoneGap Build для создания своего приложения (таким образом, у меня нет доступа к этим файлам для редактирования)

Может кто-нибудь предложить, что я могу сделать? Кажется безумным, что я не могу использовать localStorage (или куки) в моем приложении для iOS, не делая этого взлома! (мое приложение отлично работает на Android, у которого нет этой проблемы).

Я посмотрел на установке XCode и вручную кодирования/компиляции приложения, но это будет работать только на Mac (который я не имею)

UPDATE: Посмотрев вокруг, кажется, что единственное решение (я могу найти) - написать плагин для включения файлов cookie. Это все хорошо и хорошо, но:

  • Я не имею Mac, чтобы записать его на
  • Я могу программировать много языков, но Java не один из них
  • Как бы я даже добавьте его в свой список сборки, чтобы я мог включить его!

Кто-нибудь заинтересован в написании плагина для меня? Насколько я вижу, это просто нужно было бы вызвать:

CookieSyncManager.createInstance(this); 
CookieSyncManager.getInstance().startSync(); 
webView = (WebView) findViewById(R.id.webview); 
webview.getSettings().setJavaScriptEnabled(true); 

Это подталкивает меня к стене!

+0

Возможно, этот плагин вам подходит? https://github.com/bez4pieci/Phonegap-Cookies-Plugin –

+0

Спасибо - не уверен, что делает то, что мне нужно :) Я нашел способ заставить его работать, установив 1,5-секундный таймер на загрузку исходного скрипта, который то, похоже, дает iOS время, чтобы загрузить часть файлов cookie. Безумный, я знаю ... но это работает! –

+0

Я неправильно понял ваш вопрос. На самом деле я использую файлы cookie в моих приложениях PhoneGap, и у меня нет проблем. Странно ... –

ответ

1

Просто перейдя по моим вопросам и подумал, что я отвечу на этот вопрос. Похоже, что по какой-то причине iOS не любит загружать localStorage() на странице. Чтобы обойти это, вы также должны установить таймер на 1,5 секунды - поэтому он не запускается до загрузки iOS. localStorage(). то есть:

setTimeout(function() { doInit() } , 1500); 

Это не идеально - и это было бы гораздо лучше, если бы существовал способ, чтобы включить кук для прошивки в PhoneGap Build, без того, чтобы иметь возможность написать плагин, чтобы сделать это (я дон у меня есть навыки, чтобы сделать;))

+0

У вас, похоже, есть код для Android. Я не знаю, где можно сделать редактирование в источнике телефонных разговоров, хотя в более ранних версиях телефонного разговора это было проще. Попробуйте включить функцию localStorage в обратном вызове устройства, доступном в приложениях phonegap. – JVE999

0

Если вы имеете в виду document.localStorage (как заметил выше), что будет проблема, так как localStorage является собственностью window, не document.

+0

К сожалению, я имел в виду окно.localStorage :) –

 Смежные вопросы

  • Нет связанных вопросов^_^