2016-09-06 87 views
1

我們的Android應用程序適用於普通設備以及可穿戴設備,如Google Glass等。如果應用程序在可穿戴設備上運行,則需要添加其他功能。是否有API來檢查設備是否可穿戴?問候。如何檢測本地Android設備是否可穿戴?

+3

鑑於彈性,Velcro(TM)和膠水,我可以讓任何手機或平板電腦成爲可穿戴設備。 「可穿戴」更像是一個營銷名詞,而不是技術聲明。你可以通過'PackageManager','hasSystemFeature()'和'FEATURE_WATCH'來檢測你是否在手錶上運行。鑑於[文檔](https://developer.android.com/reference/android/content/pm/PackageManager。「FEATURE_WATCH」的html#FEATURE_WATCH)有「這裏的腕錶被定義爲佩戴在身體上的裝置,也許是手腕上的裝置」,它有可能對您有用。 – CommonsWare

+0

我不確定,但不能檢查決議並決定。例如,如果分辨率是280x280或320x320。 –

+0

感謝您的評論。魔術貼/膠水部分+1。 – Peter

回答

0

如果應用程序在手錶上,手錶可能連接到手機。使用穿戴式節點API來檢測手機。這並不能保證如果設備沒有連接,這不是手錶。但是,只要假設,應用程序應該在手錶上正常工作,只要它沒有使用太多的內存。

另外,手錶沒有wifi(afaik),大多數手機都這樣。檢查wifi。然後決定「如果沒有連接的節點,並且我們有無線網絡,假設我們使用手機是安全的」。

同樣,對於應用程序的工作,它應該沒有關係。我不小心將手機應用程序安裝在手錶上,它運行良好,速度非常慢。

0

穿戴式可以通過使用uimode資源預選賽進行檢測:

  1. 在項目的res /價值/ bool.xml文件,創建一個boolean資源與假,前值:<bool name="isawatch">false</bool>
  2. 創建在res一個新的文件夾,名爲values-wear
  3. ,並創建一個真正的價值相同名稱的布爾資源另一個bool.xml文件,<bool name="isawatch">true</bool>

總之,

RES /價值/ bool.xml

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <bool name="isawearable">false</bool> 
</resources> 

RES /值磨損/ bool.xml

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <bool name="isawearable">true</bool> 
</resources> 

,現在你應該能夠調用context.getResources().getBoolean(R.id.isawearable)爲您的應用程序需求。

作爲一個加號,你可以找到其他可用的應用程序預選賽這裏列出的Android文檔表格,https://developer.android.com/guide/topics/resources/providing-resources.html#AlternativeResources

HTHS!

0

你可以通過使用android.os.Build類來找出你的Android應用程序在哪個操作系統版本,產品,設備等上運行。

例如:你可以,如果您的應用程序通過這個對谷歌玻璃(API 19)運行檢測:

if(Build.VERSION.SDK_INT==Build.VERSION_CODES.KITKAT){ 
    Log.e("SDK_INT",""+Build.VERSION.SDK_INT); 
    Log.e("MODEL",""+Build.MODEL); 
    Log.e("DEVICE",""+Build.DEVICE); 
    Log.e("TYPE",""+Build.TYPE); 
    Log.e("HARDWARE",""+Build.HARDWARE); 
    Log.e("BRAND",""+Build.BRAND); 
    Log.e("DISPLAY",""+Build.DISPLAY); 
    Log.e("MANUFACTURER",""+Build.MANUFACTURER); 
    Log.e("PRODUCT",""+Build.PRODUCT); 
    } else { 
    Log.e("Other",""+Build.VERSION.SDK_INT); 
    } 

日誌結果

09-13 17:58:42.835 24240-24240/com.example.myxlab.beyondartest E/SDK_INT: 19 
09-13 17:58:42.835 24240-24240/com.example.myxlab.beyondartest E/MODEL: Glass 1 
09-13 17:58:42.835 24240-24240/com.example.myxlab.beyondartest E/DEVICE: glass-1 

也是一樣的手錶(API 20)。

相關問題