Sorunu açıklamama izin verin, uzun zamandır beni rahatsız ediyor. Herhangi bir yardım takdir edilecektir. Lütfen yardım et.UIWebView öğesinden yerel tüm iOS işlevlerini yerel arama yapılamıyor JavaScriptCore ve JSContext
iOS'ta karma tür bir uygulama üzerinde çalışıyorum. Web sayfalarını http://myserver.com'dan yüklemek için UIWebView
kullanıyorum (örneğinin gerçek URL'si değil) Bu sunucuda birden fazla web sayfası barındırdım. Ben UIWebView
javascript (sunucumdan yüklenen web sayfalarının) ve yerel iOS fonksiyonları arasında iletişim kurmak için "JSContext" kullanıyorum
.
UIWebView JavaScript losing reference to iOS JSContext namespace (object) numaralı belgede verilen yordamı izledim, bağlam kayboldu, ancak bu sorunun çözümüne yönelik bir geçici çözüm ekledim. Olay UIWebView
içindeki bazı çerçeve yüklemeleri için iOS içeriğim kayboluyor. Aşağıdaki adımları izledikten sonra bağlam kayboldu.
- ben
UIWebView
yılında myserver gelen Page1 yükleyin. Neredeyse her şey iyi çalışır OS yerli iOS javascript denir. - ikinci page2
UIWebView
aynı JavaScript bağlamda page1 etkileşimin sonucu olarak yüklenir erince kayboldu alır.
Bir daha büyülü şey daha var. dolaylı yükleme yerine (sayfa1 ->sayfa2) sayfa2 yerine doğrudan sayfa2 yüklüyorsam. Tüm iyi çalışır tüm yerel yöntemler beklendiği gibi UIwebView
denir. Lütfen yardım edin. Daha fazla bilgi istiyorsanız lütfen sorunuz.
http://stackoverflow.com/questions/21714365/uiwebview-javascript-losing-reference-to-ios-jscontext-namespace-object için yinelenen mi? – Andy
Bu, http://stackoverflow.com/questions/21714365/uiwebview-javascript-losing-reference-to-ios-jscontext-namespace-object adresinde gerçekleşenle aynı şeydir. Yeni bir sayfa yüklendiğinde, yeni sayfa yeni bir JSContext alır. Bir çerçeve yükünden bahsetmiştin. Çerçeve JSContext ayarlanmış doğru mu? – pwc
Sayfanın bir kısmı webViewDidFinishedloading çağırmadan yüklenir. JSContext'i böyle bir istek için ayarlayamıyorum. – jnix