Telefon için varsayılan kullanıcı aracısını HttpClient bağlantısında kullanmak istiyorum ve sorgulamak için WebView'a sahip olmadan kullanıcı aracısını edinmenin bir yolu olup olmadığını öğrenmek istiyorum.WebView.getSettings(). GetUserAgentString() ürününün önüne varsayılan kullanıcı aracı dizesi elde etmenin bir yolu var mı?
cevap
Çok geç cevap, bunun için arayan başkaları için.
HttpUrlConnection tarafından kullanılan kullanıcı aracısı dizesini HttpClient ile kullanmak ve kendi sürüm bilgilerimle değiştirmek için bir yöntem arıyordum. Bu şekilde, Android uygulamam, sunucunun günlük dosyalarından (Android Sürümü, aygıt adı/türü ve uygulamamın sürümü) ayıklayabileceğim bazı yararlı sürüm bilgileri sağlar. Örneğin
, benim telefon için kullanıcı aracısı dizesi HttpUrlConnection kullanarak şöyle görünür:
Dalvik/1.4.0 (Linux; U; Android 2.3.5; HTC Desire HD A9191 Build/GRJ90)
Bu dize şöyle sistem özelliklerinden elde edilebilir:
String userAgent = System.getProperty("http.agent");
A uyarıları için teşekkürler, ama ayrıca bu sürüm hakkında ne güzel, bu _not_ web tarayıcısı kullanıcı aracısıdır. – lilbyrdie
Hayır, bu, kullanıcı aracı dizesini almanın tek resmi yoludur.
Mozilla/5.0 (Linux; U; Android 1.1; en-gb; dream) AppleWebKit/525.10+ (KHTML, like Gecko) Version/3.0.4 Mobile Safari/523.12.2 – G1 Phone
Http sunucuları belgelerin tarayıcıya özel versiyonlarını hizmet etmek kullanıcı aracısı dizesi kullanın:
Btw, dönen dize böyle bir şeydir. Bu, yalnızca bir sayfanın mobil sürümünü istiyorsanız ve/veya daha sonra Android'in tarayıcısında görüntülemek istiyorsanız mantıklı olacaktır.
API düzeyinde başlayarak 17, WebSettings
'da bir WebView tarafından kullanılan varsayılan Kullanıcı Aracısı dizesini döndüren statik bir yöntem vardır:
WebSettings.getDefaultUserAgent(context)
Yöntem statik olduğundan, onu çalıştırmak için WebView örneğine ihtiyacınız yoktur.
- 1. Bir uyarı kutusunun kaynağını elde etmenin bir yolu var mı?
- 2. Kalan animasyon süresini elde etmenin bir yolu var mı?
- 3. Bir EntityManager'dan tüm yönetilen varlıkları elde etmenin bir yolu var
- 4. CID'si ile bir İÇN hakkında bir JSON elde etmenin bir yolu var mı?
- 5. shapely.geometry.shape.contains (a_point) çağrısının hızını optimize etmenin bir yolu var mı?
- 6. JavaScript - Varsayımsal CSS stilleri uygulandıktan sonra bir öğenin offsetTop'unu elde etmenin bir yolu var mı?
- 7. php veya javascript kullanmadan içeriğine sığacak şekilde bir textarea elde etmenin bir yolu var mı?
- 8. C# görevini eşzamanlı olarak çalıştırma ve sonucu bir satır kodla elde etmenin bir yolu var mı?
- 9. Eşzamansız bir yöntemi senkronize etmenin genel bir yolu var mı?
- 10. "isForEachable" için bir değişken test etmenin bir yolu var mı
- 11. Bir apk'nın gizlenip gizlenmediğini tespit etmenin bir yolu var mı?
- 12. Uzak görüntü boyutlarını elde etmenin hızlı yolu
- 13. Javascript ile varsayılan görüntüler klasörünü tespit etmenin bir yolu var mı?
- 14. Sonuç kümesiyle JPA Adlandırılmış Sorgu için sayı boyutunu elde etmenin bir yolu var mı?
- 15. YouTube API v3'ü kullanarak "Daha Sonra İzle" oynatma listesini elde etmenin bir yolu var mı?
- 16. Daha önce tanımlanmış Sequelize Modeline göre öznitelikleri // ilişkilendirmeleri elde etmenin bir yolu var mı?
- 17. Mheen profili aktivasyonunun mülkiyete göre tersini elde etmenin bir yolu var mı?
- 18. Atlassian Bamboo'da, görüntü olarak en son yapı durumunu elde etmenin herhangi bir yolu var mı?
- 19. Kaydırma çubuğu yüksekliği ve genişliğini elde etmenin bir yolu var mı?
- 20. Ortak iletişim düğmelerinin yerelleştirilmiş isimlerini elde etmenin bir yolu var mı?
- 21. Kestrel/ASP.NET Çekirdeğinde istek kuyruğunda harcanan süreyi elde etmenin bir yolu var mı?
- 22. Liste görünümünde alt öğe sayısını elde etmenin bir yolu var mı?
- 23. Hata ayıklama bilgisi devre dışı bırakıldığında DOM öğesinin kapsamını elde etmenin bir yolu var mı?
- 24. JIRA'da belirli bir kullanıcı tarafından kaydedilen iş geçmişini kontrol etmenin bir yolu var mı?
- 25. Scaladoc'u IntelliJ Idea'ye entegre etmenin kolay bir yolu var mı?
- 26. C++ için doxygen'i optimize etmenin bir yolu var mı?
- 27. Çerezin httponly olup olmadığını kontrol etmenin bir yolu var mı?
- 28. SQLAlchemy Bağlantısını test etmenin bir yolu var mı?
- 29. Yüklediğiniz hangi gulp versiyonunu kontrol etmenin bir yolu var mı?
- 30. Bilgisayarımda 4K çözünürlüğünü simüle etmenin bir yolu var mı?
[Kullanıcı Aracını Geri Al] programında olası bir kopyası (http://stackoverflow.com/questions/3626071/retrieve-user-agent-programatically) – Idolon
21 - 0, belki kabul edilen cevabı tekrar değerlendirmelisiniz? – theblang
@mattblang anahtarlı, – cottonBallPaws