2013-01-18 15 views
8

Bir Android uygulaması geliştirmek için phonegap/cordova kullanıyorum.AJAX için PhoneGap/Cordova Kullanıcı-Ajansı'nı değiştir

Uygulama, uzak bir sunucudaki dosyaları okumalıdır. Bu yüzden AJAX (jQuery) kullanıyorum. Sorun şu: Uzak sunucu, tüm aygıtları mobil aygıtlardan, benim için çalışmayan bir mobil sürüme yönlendiriyor, bu yüzden Kullanıcı Aracını bir masaüstü tarayıcısına değiştirmem gerekiyor.

Bunu nasıl yapabilirim? a solution for iOS'u gördüm. Android için böyle bir şey mümkün mü?


Düzenleme: ben bir çözüm buldum:

Sadece onCreate kullanılan yöntem içinde /src/com/a/b/c.java için

WebSettings w = this.appView.getSettings();  
w.setUserAgentString("Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.202 Safari/535.1"); 

ekleyin. senin onCreate yöntemde

+1

Bu benim için çalışmadı. Herhangi bir fikir? – Danation

+2

Kendi sorunuza bir cevap ekleyebilirsiniz - soruyu kendi başına düzenlemek zorunda değilsiniz. Tekrar düzenlerseniz ve bunu yaparsanız çok daha iyi olurdu. – rjmunro

+0

@ninov Cordova kullanıyorum ama herhangi bir .java dosyası yok. Buna javascript denebilir miyiz? 2017 itibariyle hala çalışıyor mu? –

cevap

1

Eğer kullanıcı aracısı değiştirmeden sağlayan Cordova için daha güçlü bir http istemcisi, ya da bu konuda herhangi bir başlığın arıyorsanız, https://github.com/aporat/cordova-plugin-fetch deneyin. iyi test edilmiş yerel ağ kitaplıklarını (ios üzerinde AFNetworking 2 ve androidde OKHttp) sarar.

Ayrıca, window.fetch'i izler, böylece fetch.js ile tarayıcıda test ederken, simülatörler ve aygıtlarda cordovaFetch kullanabilirsiniz.

Sadece

cordova plugin add https://github.com/aporat/cordova-plugin-fetch.git

ile eklentiyi yükleyin ve yaptığınız isteğindeki kullanıcı aracısı başlığını içermektedir.

cordovaFetch('/users.json', { 
    method : 'GET', 
    headers: { 
    'User-Agent': 'your user agent' 
}, 
})