Lollipop 5.0 için AOSP Kaynak kodunu indirdim. 21 nolu api seviyesinde, bluetooth düşük enerji tarama ayarları altında, SCAN_MODE_BALANCED, SCAN_MODE_LOW_LATENCY, SCAN_MODE_LOW_POWER
telefon numaralarını taramak için üç seçenek vardır. Farklı tarama aralığı ve tarama penceresi değerlerine dayanıyor mu? Eğer öyleyse, bu makrolar için tanımlanan değerleri kaynak kod dizininde nerede bulabilirim.Android AOSP - android kaynak kodunda tarama aralığı ve tarama penceresinin tanımı
cevap
ben http://androidxref.com/5.0.0_r2/xref/packages/apps/Bluetooth/src/com/android/bluetooth/gatt/ScanManager.java değerlerin altında bulunmuştur "SCAN_MODE_BALANCED":
/**
* Scan params corresponding to regular scan setting
*/
private static final int SCAN_MODE_LOW_POWER_WINDOW_MS = 500;
private static final int SCAN_MODE_LOW_POWER_INTERVAL_MS = 5000;
private static final int SCAN_MODE_BALANCED_WINDOW_MS = 2000;
private static final int SCAN_MODE_BALANCED_INTERVAL_MS = 5000;
private static final int SCAN_MODE_LOW_LATENCY_WINDOW_MS = 5000;
private static final int SCAN_MODE_LOW_LATENCY_INTERVAL_MS = 5000;
/**
* Scan params corresponding to batch scan setting
*/
private static final int SCAN_MODE_BATCH_LOW_POWER_WINDOW_MS = 1500;
private static final int SCAN_MODE_BATCH_LOW_POWER_INTERVAL_MS = 150000;
private static final int SCAN_MODE_BATCH_BALANCED_WINDOW_MS = 1500;
private static final int SCAN_MODE_BATCH_BALANCED_INTERVAL_MS = 15000;
private static final int SCAN_MODE_BATCH_LOW_LATENCY_WINDOW_MS = 1500;
private static final int SCAN_MODE_BATCH_LOW_LATENCY_INTERVAL_MS = 5000;
Ayrıca ScanManager.ScanNative.configureRegularScanParams dışarı ödeme(). İki param scanWindow
ve scanInterval
tarama ayarlarına göre ayarlanır (ScanSettings.SCAN_MODE_LOW_POWER
, ScanSettings.SCAN_MODE_BALANCED
, ScanSettings.SCAN_MODE_LOW_LATENCY
), BLE birimlerine dönüştürülür ve daha sonra gattSetScanParametersNative() öğesine geçirilir.
Bu yardımcı olur umarım.
bu doğru olup olmadığından emin değilim ya sen bile gerek değerleri bulmak için kullanabilirsiniz, ancak bulursa bazı code from Google regarding scanning settings: anahtar kelimeyi greping ederken
// Constants for Scan Cycle
// Low Power: 2.5 minute period with 1.5 seconds active (1% duty cycle)
/* @VisibleForTesting */ static final int LOW_POWER_IDLE_MILLIS = 148500;
/* @VisibleForTesting */ static final int LOW_POWER_ACTIVE_MILLIS = 1500;
// Balanced: 15 second period with 1.5 second active (10% duty cycle)
/* @VisibleForTesting */ static final int BALANCED_IDLE_MILLIS = 13500;
/* @VisibleForTesting */ static final int BALANCED_ACTIVE_MILLIS = 1500;
// Low Latency: 1.67 second period with 1.5 seconds active (90% duty cycle)
/* @VisibleForTesting */ static final int LOW_LATENCY_IDLE_MILLIS = 167;
/* @VisibleForTesting */ static final int LOW_LATENCY_ACTIVE_MILLIS = 1500;
Teşekkür ederim Tim. Ama ben google android kaynak kodunda bu tür tanımları bulamadım. Sürücü seviyesinde arama yaptıktan sonra bu http://androidxref.com/5.0.0_r2/xref/external/bluetooth/bluedroid/stack/btm/btm_ble_int gibi bir şey buldum. .h #define BTM_BLE_GAP_DISC_SCAN_INT 18/* Interval (scan_int) = 11.25 ms = 0x0010 * 0.625 ms */ #define BTM_BLE_GAP_DISC_SCAN_WIN 18/* scan_window = 11.25 ms = 0x0010 * 0.625 ms */ – HRG
tarama penceresine karşılık gelen ve tarama aralığı. Ama SCAN_MODE_BALANCED, SCAN_MODE_LOW_LATENCY, SCAN_MODE_LOW_POWER değerlerini nasıl tanımladıklarını merak ediyorum! – HRG
- 1. Android WebView üzerinden Başsız Tarama?
- 2. kırpmaya projemde OpenCV ve Tarama kitaplığı kullanıyorum, android bir belge tarama uygulama oluşturma muyum android
- 3. Scala'da tarama ve tarama arasındaki fark
- 4. Android için flaş birden fazla fotoğraf tarama
- 5. YapıMap ve tarama derlemeleri
- 6. iki tarama ve çöp değeri
- 7. Android cihazlar WiFi ağları için * aktif olarak * tarama yapar mı?
- 8. Scrapy kimliği doğrulanmış tarama
- 9. Android Marshmallow 6.0.1 Bluetooth Tarama Dönme Sonuç Yok
- 10. Bir liste tarama
- 11. Tarama Belirteçleri karmaşıklaştırdığında Parser
- 12. hızlı giriş tarama
- 13. Scanf Tarama karakterini atla
- 14. Son birkaç dakika boyunca Android tarayıcılardan tarama geçmişini kaydetme
- 15. Renkli tarama ekranı
- 16. Köşeli tarama hala çalışıyorsa
- 17. nasıl Jenkins Bitbucket Şube Kaynak Eklentisi için tarama kimlik eklerim?
- 18. AOSP gelişimi için Android stüdyosunu kullanabilir miyiz?
- 19. Dizin tarama etkin - sayfa yönlendirilmiyor.
- 20. Barkod tarama windows phone 8
- 21. Bir tarama işlemini Ctrl-C
- 22. Tarama LinkedIn Scrub ile doğrulanırken
- 23. AOSP
- 24. iOS Safari Özel Tarama localStorage ve sessionStorage Desteği?
- 25. Android AOSP -/packages/apps uygulamasına ekleme
- 26. f # yinelenen tanımı F # powerpack matematik sağlayıcı kaynak kodunda
- 27. h5py kullanarak HDF5 dosyasına tarama görüntüsü ekle
- 28. HBase kabuk tarama baytını dize dönüşümü
- 29. R tarama grafiği pabuç etiketleri aralığa uymuyor
- 30. Klasör tarama komut dosyasıyla ilgili sorunlar
Thankyou @yanoken !! – HRG
ScanSettings'i SCAN_MODE_LOW_LATENCY olarak ayarladığımı söylersem tam olarak ne anlama gelir? 5 saniyede bir 5 saniyede bir tarama yaptığını ve tekrar taramaya başladığını söylüyor mu? - Güncellemelerin her 5 saniyeden daha hızlı olduğu bir uygulama olduğu için böyle bir durum olduğunu düşünmüyorum. Bu değerleri yorumlamaktan memnuniyet duyar mısınız? – BigPenguin