2016-11-03 14 views
1

私は継続的な仕事をしているAndroidアプリケーションプロジェクトに取り組んでいます。ユーザーが電話のホーム画面のどこかをクリックすると、この作業をやめなければなりません。誰かが私のアプリでタッチイベントを取得できる方法を教えてください。私はいくつかのタスクを行うことができます。タッチまたは何でも使えるブロードキャスト。私のアプリケーションに入ることができるように。私に案内してください。ホーム画面のAndroidタッチイベントは表示されません

私はこの事に https://developer.android.com/reference/android/view/View.OnTouchListener.html

感謝をしたくありません。

答えて

0

 public class TouchActivity extends Activity 
{ 
    @Override 
    protected void onCreate(Bundle savedInstanceState) 
    { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
    } 

    @Override 
    public boolean onTouchEvent(MotionEvent event) 
    { 
     if (event.getAction() == MotionEvent.ACTION_DOWN) 
     { 
      Log.d("Touch", "Touch"); 
      sendBroadcast(new Intent("touch_event_has_occured")); 
     } 

     return super.onTouchEvent(event); 
    } 
} 

が今、あなたのグローバルな放送受信機であなたが得るでしょう、あなたの活動のクラスでこれを試すbrodcast

public class TouchReveiver extends BroadcastReceiver 
{ 

    @Override 
    public void onReceive(Context context, Intent intent) 
    { 
     if (intent.getAction().equals("touch_event_has_occured")) 
     { 
      Log.d("Touch", "Touch"); 
     } 
    } 

} 

はアクションで受信機を登録することを忘れないでください

+0

これは、アプリケーションが開いている場合にのみ機能します。私はアプリケーションが開いていない場合でもタッチイベントを取得したい。 –

関連する問題