2014-01-30 69 views
0

我試着去創建一個trigger.io模塊振動功能(新到Android/JAVA)來電振動trigger.io模塊

我是下面的代碼,但我不斷收到這個

The method getSystemService(String) is undefined for the type API

我沒有導入圖書館或其他東西?

public class API { 
    public static void pulse(final ForgeTask task){ 
     Vibrator v = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE); 

     // Output yes if can vibrate, no otherwise 
     if (v.hasVibrator()) { 
      v.vibrate(400); 
     } 
    } 
} 

回答

1

獲取的保持一個Trigger.io模塊中的上下文可以通過調用來完成,以ForgeApp.getActivity()

這將使你:

Vibrator v = (Vibrator)ForgeApp.getActivity().getSystemService(Context.VIBRATOR_SERVICE); 
+0

從trigger.io得到了相同響應的回覆,但是感謝這個修復了! –

0

我假設你想調用getSystemService(),就像你從一個activity一樣調用?

您將需要通過上下文來做到這一點(可以是你的活動),並調用它的上下文

例如,你可以在構造函數中傳遞:

public class API { 

    Context mContext; 

    public API(Context context) { 
     mContext = context; 
    } 

    public static void pulse(final ForgeTask task){ 
     Vibrator v = (Vibrator) mContext.getSystemService(Context.VIBRATOR_SERVICE); 

     // Output yes if can vibrate, no otherwise 
     if (v.hasVibrator()) { 
      v.vibrate(400); 
     } 
    } 
} 
+0

啊以爲我錯過了什麼,我只需要檢查它現在的作品。 –

+0

它不起作用,它繼續給予''''「type」:「UNEXPECTED_FAILURE」和''''NullPointerException''' –

+0

這只是一個普通的原生Android解決方案,猜測它不適用於trigger.io: ) – Philio