Я разрабатываю приложение android/tizen, используя проект crosswalk. Теперь мне нужно изменить агент пользователя для просмотра страницы в настольной версии. Можно ли изменить агент пользователя и как? Спасибо!Возможно ли изменить пользовательский агент в Crosswalk Android/Tizen-Apps?
ответ
Используйте этот фрагмент кода:
XWalkView mXWalkView;
mXWalkView.getSettings().setUserAgentString("Your User Agent");
В документации ничего нет. Единственным способом использования является использование setResourceClient и WebResourceResponse для изменения агента пользователя. Пример использования:
setResourceClient(new XWalkResourceClient(this) {
@Override
public WebResourceResponse shouldInterceptLoadRequest(XWalkView view, String url) {
try {
URL u = new URL(url);
HttpURLConnection c = (HttpURLConnection) u.openConnection(Proxy.NO_PROXY);
c.setRequestProperty("User-agent", "test user agent");
return new WebResourceResponse(null, "utf-8", c.getInputStream());
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return super.shouldInterceptLoadRequest(view, url);
}
});
Это для веб-приложений, где вы можете изменить JS-файлов .:
я использую это временное решение, оно работает а также с Crosswalk 9.
xview.addJavascriptInterface(new Object(){
@JavascriptInterface
public String getNewUserAgent(){
return "My User Agent";
}
}, "NativeInterface");
И в моем веб-приложении i ju й вызов:
navigator.ua = NativeInterface.getNewUserAgent();
Спасибо. До сих пор я использую Crosswalk 8, но это интересная информация! – Jonson
Новый API для установки агента пользователя в проекте и будет выпущен в Пешеходный переход-12, примерно в конце января следующего года.
Это будет выглядеть так: xwalkView.setUserAgentString (newUserAgentString);
Источник: https://www.mail-archive.com/[email protected]/msg00634.html – cprcrack
Я использовал отражение, чтобы решить эту проблему, пока этот API не станет общедоступным в Crosswalk 12. Это работает в Crosswalk 9.38.208.10.
private void setWebViewUserAgent(XWalkView webView, String userAgent)
{
try
{
Method ___getBridge = XWalkView.class.getDeclaredMethod("getBridge");
___getBridge.setAccessible(true);
XWalkViewBridge xWalkViewBridge = null;
xWalkViewBridge = (XWalkViewBridge)___getBridge.invoke(webView);
XWalkSettings xWalkSettings = xWalkViewBridge.getSettings();
xWalkSettings.setUserAgentString(userAgent);
}
catch (NoSuchMethodException | IllegalAccessException | InvocationTargetException e)
{
// Could not set user agent
e.printStackTrace();
}
}
Спасибо. Это сработало. – Ataru
Эй, похоже, 'getSettings' больше не доступен. Есть ли другие способы сделать это? – tehmaestro
- 1. Как проверить пользовательский агент Crosswalk WebView?
- 2. Изменить пользовательский агент iPhone?
- 3. WinJS.Xhr изменить пользовательский агент
- 4. возможно ли изменить агент-агент для одного окна?
- 5. Как можно изменить пользовательский агент в Maven?
- 6. Возможно ли обмануть пользовательский агент и ОС Chrome?
- 7. Используется ли поддельный пользовательский агент?
- 8. Как настроить пользовательский агент в Кордове 5.0+ с использованием Crosswalk 14+
- 9. Как изменить пользовательский агент Windows Phone
- 10. Как изменить пользовательский агент Read_html Pandas?
- 11. Пользовательский агент Phonegap
- 12. Что такое пользовательский агент?
- 13. Что такое пользовательский агент iPad?
- 14. Может ли Zend_Soap_Client установить пользовательский агент?
- 15. Crosswalk, как изменить текст?
- 16. пользовательский агент, проверяющий ios6
- 17. Можно ли найти пользовательский агент из JavaScript?
- 18. Пользовательский агент или демон?
- 19. Пользовательский агент HTTP HTTP
- 20. Пользовательский агент на url.getContent();
- 21. Пользовательский агент пользователя анализатор
- 22. Возможно ли: пользовательский лоток?
- 23. Пользовательский агент WebView
- 24. Пользовательский агент Android в URLConnection
- 25. Как изменить пользовательский агент селена в селен-webdriver nodejs land?
- 26. Как изменить пользовательский агент по умолчанию в модуле spynner python?
- 27. Как установить пользовательский пользовательский SIP-агент в android?
- 28. Хром Пользовательский агент не изменяется
- 29. Как изменить пользовательский агент на Cordova (Phonegap) 2.4.0 для iOS?
- 30. Как работает пользовательский ролевой агент?
Пожалуйста, добавьте некоторое объяснение того, что делает ваш код и как он работает, чтобы новички, подобные OP, могли учиться на ответ. –
Не удалось решить мою актуальную проблему, но сервер распознает новый пользовательский агент. Спасибо! :) – Jonson
с перекрестка 9 на этом больше не будет работать. – Ostkontentitan