Saya telah melakukan riset, dan pertanyaan ini telah muncul, tetapi tidak dengan cara yang saya inginkan. Saya sedang membangun halaman untuk klien yang merupakan pendaratan kode QR, yang merupakan tempat untuk mengunduh aplikasi. Jadi dia tidak perlu mencetak 2 kode QR pada halaman, saya ingin mendeteksi sistem operasi saat ini (Apple / Android / Lainnya [tidak didukung]) dan memodifikasi elemen saya berdasarkan nilai itu.
Saya telah melihat script "detectmobilebrowsers" dan itu hanya bertujuan untuk mengetahui apakah pengguna mobile atau tidak, sedangkan saya ingin mencari tahu sistem operasi apa yang dijalankan pengguna dan menyarankan versi aplikasi terbaik.
Jawaban lain yang saya temukan mirip dengan pertanyaan ini sepertinya sudah ketinggalan zaman atau tidak dapat diandalkan (tidak memiliki deteksi untuk browser tablet Android), jadi saya mencari sesuatu yang baru. Bagaimana saya bisa mencapai ini? (Lebih disukai menggunakan jQuery - Javascript - PHP dalam urutan itu).
sumber
if( /Android/i.test(navigator.userAgent) ) { // some code.. }
akan mengembalikan true hanya untuk agen pengguna Android.Jawaban:
Anda dapat menguji string agen pengguna:
sumber
else if (userAgent.match(/Windows Phone/i)) { return 'WindowsPhone'; }
sebelum Android yang lain jika mendeteksi Windows Phone. Sejauh ini tampaknya berfungsi dengan baik.iOS
kita juga perlu memverifikasi!window.MSStream
untuk menghindari IE11 yang dihitung sebagaiiOS
;-)Solusi 1: Agen Pengguna Mengendus
Untuk Android dan iPhone:
Jika Anda ingin mendeteksi semua perangkat seluler termasuk blackberry dan Windows phone maka Anda dapat menggunakan versi komprehensif ini:
Cons : String agen pengguna berubah dan semakin diperbarui karena ponsel dan merek baru akan hadir hari demi hari. Jadi, Anda harus terus memperbarui daftar ini jika Anda ingin mendukung semua perangkat seluler.
Solusi 2: deteksi seluler perpustakaan JS
Anda dapat menggunakan ponsel mendeteksi pustaka JS untuk melakukan ini.
Cons : Fitur deteksi perangkat berbasis JavaScript ini HANYA dapat berfungsi untuk smartphone generasi terbaru, seperti iPhone, Android, dan perangkat Palm WebOS. Fitur pendeteksian perangkat ini TIDAK mungkin berfungsi untuk ponsel cerdas yang lebih tua yang memiliki dukungan JavaScript yang buruk, termasuk perangkat BlackBerry, PalmOS, dan Windows Mobile yang lebih tua.
sumber
Satu dapat menggunakan navigator.platform untuk mendapatkan sistem operasi di mana browser diinstal.
sumber
Masalah ini telah diselesaikan di sini: Apa cara terbaik untuk mendeteksi perangkat seluler di jQuery? .
Pada jawaban yang diterima, mereka pada dasarnya menguji apakah itu iPhone, iPod, perangkat Android atau apa pun untuk mengembalikan true. Simpan saja yang Anda inginkan misalnya
if( /Android/i.test(navigator.userAgent) ) { // some code.. }
akan mengembalikan true hanya untuk agen pengguna Android.Namun, agen pengguna tidak benar-benar dapat diandalkan karena mereka dapat diubah. Yang terbaik adalah mengembangkan sesuatu yang universal untuk semua platform seluler.
sumber
Anda juga dapat Mencapai ini dengan agen pengguna di php:
}
sumber
Jika Anda menggunakan React Js untuk situs web Anda, gunakan https://www.npmjs.com/package/react-device-detect
sumber
Anda juga dapat membuat tautan Firbase Dynamic yang akan berfungsi sesuai kebutuhan Anda. Ini mendukung banyak platform. Tautan ini dapat dibuat, secara manual maupun melalui pemrograman. Anda kemudian dapat menyematkan tautan ini dalam kode QR.
Jika aplikasi target diinstal, tautan akan mengarahkan pengguna ke aplikasi. Jika tidak diinstal, maka akan diarahkan ke Play Store / App store / Situs web lain yang dikonfigurasi.
sumber
Untuk ini dan jenis lain dari deteksi klien saya sarankan perpustakaan js ini: http://hictech.github.io/navJs/tester/index.html
Untuk jawaban spesifik Anda, gunakan:
sumber
Dengan menggunakan cordova-device-plugin, Anda dapat mendeteksi
akan menjadi "Android" untuk android, dan "windows" untuk windows. Bekerja pada perangkat, dan saat mensimulasikan pada browser. Ini adalah roti panggang yang akan menampilkan nilai perangkat:
sumber