Saya telah mencari kemana-mana. Kami menggunakan Motorola Zoom untuk mencoba pengujian situs tablet kami. Masalahnya adalah Agen Pengguna Android adalah Agen Pengguna umum dan tidak ada perbedaan antara tablet Android dan seluler Android. Saya tidak ingin hanya menargetkan perangkat tertentu seperti Agen Pengguna Xoom karena Android kemungkinan besar akan ada di beberapa perangkat tablet dalam waktu dekat.
Kami menggunakan Umbraco CMS, dan kami telah melihat menggunakan solusi 51Degrees.mobi, dan saat ini ini tidak akan berfungsi untuk kebutuhan kami. Mungkin di masa depan. Saya tahu 51Degrees dan beberapa orang di Umbraco akan melakukan beberapa integrasi ke Umbraco, tetapi proyek akhir mungkin tidak akan keluar selama beberapa bulan.
Oleh karena itu, mengapa kami ingin mendeteksi String Agen Pengguna dari tablet Android dan membuatnya tidak langsung ke situs seluler kami seperti saat ini.
Jika ada yang tahu cara mendeteksi dan Tablet Android secara umum, bukan perangkat tertentu akan sangat membantu.
sumber
Jawaban:
Ini salah Ponsel Android memiliki string "Seluler" di header User-Agent. Tablet Android tidak.
Namun perlu disebutkan bahwa ada beberapa tablet yang melaporkan Safari "Seluler" di UserAgent dan yang terakhir ini bukan satu-satunya cara / cara yang solid untuk membedakan antara Seluler dan Tablet.
sumber
@Carlos: Dalam artikelnya Tim Bray merekomendasikan ini (seperti halnya posting lain oleh Google ), tetapi sayangnya itu tidak diterapkan oleh semua produsen tablet.
Sebagian besar string agen pengguna tablet Android yang pernah saya lihat menggunakan safari seluler, misalnya Samsung Galaxy Tab:
Jadi saat ini saya sedang memeriksa nama perangkat untuk mendeteksi tablet Android. Selama hanya ada beberapa model di pasaran, tidak apa-apa tetapi segera ini akan menjadi solusi yang buruk.
Setidaknya dalam kasus XOOM, bagian seluler tampaknya hilang:
Tetapi karena saat ini hanya ada tablet dengan Andorid 3.x, memeriksa di Android 3 sudah cukup.
sumber
Lebih baik juga mendeteksi agen-pengguna "seluler"
Mendeteksi perangkat Android melalui Browser
sumber
else if (userAgent.search("ipad") > -1) document.write("<b> iPad <br>") else if ((userAgent.search("iphone") > -1)||(userAgent.search("ipod") > -1)) document.write("<b> iPhone or iPod <br>")
Anda dapat mencoba skrip ini karena Anda tidak ingin menargetkan Xoom saja. Saya tidak memiliki Xoom, tetapi harus bekerja.
Saya membuat proyek di github. Lihat - https://github.com/codefuze/js-mobile-tablet-redirect . Jangan ragu untuk mengirimkan masalah jika ada yang salah!
sumber
Setelah saya mendeteksi Android di agen pengguna, inilah cara saya membedakan antara browser tablet dan smartphone (ini menggunakan Python, tetapi juga sederhana untuk bahasa pemrograman lain):
DIPERBARUI: untuk mencerminkan penggunaan Chrome di Android, sesuai komentar di bawah.
sumber
Berdasarkan string Agen di situs ini:
Hasil ini muncul:
Pertama:
Kedua:
Ketiga:
Jika Anda dapat mendeteksi tingkat demi tingkat, saya kira hasilnya 90 persen benar. Seperti Saluran Perangkat SharePoint.
sumber
Inilah yang saya gunakan:
sumber
Meskipun kami tidak dapat mengatakan jika beberapa tablet menghilangkan "seluler", banyak termasuk Samsung Galaxy Tab yang memiliki perangkat seluler di agen penggunanya, sehingga tidak mungkin untuk mendeteksi antara tablet Android dan ponsel Android tanpa harus memeriksa spesifikasi model. IMHO ini hanya membuang-buang waktu kecuali jika Anda berencana memperbarui dan memperluas daftar perangkat Anda setiap bulan.
Sayangnya solusi terbaik di sini adalah mengeluh kepada Google tentang hal ini dan meminta mereka memperbaiki Chrome untuk Android sehingga menambahkan beberapa teks untuk mengidentifikasi antara perangkat seluler dan tablet. Neraka bahkan satu huruf M ATAU T di tempat tertentu dalam string sudah cukup, tapi saya rasa itu terlalu masuk akal.
sumber
Xoom memiliki kata Xoom di agen pengguna: Mozilla / 5.0 (Linux; U; Android 3.0.1; en-us; Xoom Build / HRI66) AppleWebKit / 534.13 (KHTML, seperti Gecko) Versi / 4.0 Safari / 534.13
Galaxy Tab memiliki "Seluler" di agen pengguna: Mozilla / 5.0 (Linux; U; Android 2.2; en-us; SCH-I800 Build / FROYO) AppleWebKit / 533.1 (KHTML, seperti Gecko) Versi / 4.0 Mobile Safari / 533.1
Jadi, mudah untuk mendeteksi Xoom, sulit untuk mendeteksi apakah versi Android tertentu mobile atau tidak.
sumber
Kebanyakan tablet modern menjalankan honeycomb alias 3.x. Tidak ada ponsel yang menjalankan 3.x secara default. Sebagian besar tablet yang saat ini menjalankan 2.x memiliki kapasitas lebih kecil dan mungkin lebih baik jika disajikan dengan situs seluler. Saya tahu ini tidak sempurna .. tapi saya rasa itu jauh lebih akurat daripada tidak adanya ponsel ..
sumber
Meskipun Seluler Android mungkin memiliki "seluler" dalam string agen penggunanya, bagaimana jika menggunakan Opera Mobile untuk Android di Tablet? Ini akan tetap memiliki "seluler" dalam string agen penggunanya, tetapi harus menampilkan situs berukuran Tablet. Anda harus menguji "seluler" yang tidak didahului oleh "opera", bukan hanya "seluler"
atau Anda bisa melupakan Opera Mobile.
sumber
Saya akan merekomendasikan menggunakan Categorizr untuk mendeteksi apakah pengguna menggunakan tablet. Anda dapat melihat hasil tes kategorisasi di sini .
sumber
Jika Anda menggunakan tidak adanya "Seluler" maka itu hampir benar. Namun ada HTC Sensation 4G (4.3 inci dengan android 2.X) yang tidak mengirimkan kata kunci Seluler.
Alasan mengapa Anda mungkin ingin memperlakukannya secara terpisah adalah karena
iframes
dll.sumber
51Degrees beta, 1.0.1.6 dan rilis stabil terbaru 1.0.2.2 (28/4/2011) sekarang memiliki kemampuan untuk mengendus tablet. Pada dasarnya di sepanjang garis:
Semoga ini bisa membantu Anda.
sumber
Coba OpenDDR , ini gratis tidak seperti kebanyakan solusi lain yang disebutkan.
sumber