java - How to start sevice in dialer (default or stock dialer) of android -


i want start service when dialer (default or stock dialer) open. service toasts message. how start service dialer. startservice command working in mainactivity, not working while dialer open.

my code shown below :

manifest.xml

 <?xml version="1.0" encoding="utf-8"?>      <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.chatheads">  <uses-permission android:name="android.permission.system_alert_window" /> <uses-permission android:name="android.permission.dial_action" /> <uses-permission android:name="android.permission.call_phone" />       <application     android:allowbackup="true"     android:icon="@mipmap/ic_launcher"     android:label="@string/app_name"     android:supportsrtl="true"     android:theme="@style/apptheme">     <activity android:name=".mainactivity">         <intent-filter>             <action android:name="android.intent.action.main" />              <category android:name="android.intent.category.launcher" />         </intent-filter>     </activity>      <service         android:name=".myservice"         android:enabled="true"         android:exported="true" />      <activity android:name=".secondactivity"></activity> </application>  </manifest>  

mainactivity.java

package com.example.chatheads;  import android.support.v7.app.appcompatactivity; import android.content.intent; import android.os.bundle; import android.text.method.dialerkeylistener; import android.view.view; import android.view.view.onclicklistener; import android.widget.button;   public class mainactivity extends appcompatactivity { button startservice,stopservice; @override protected void oncreate(bundle savedinstancestate) {     super.oncreate(savedinstancestate);     setcontentview(r.layout.activity_main);     startservice=(button)findviewbyid(r.id.startservice);     stopservice=(button)findviewbyid(r.id.stopservice);         if(getintent().getaction().equals(intent.action_dial)) {         intent intent = new intent(getbasecontext(), myservice.class);         startservice(intent);      }      startservice.setonclicklistener(new onclicklistener() {          @override         public void onclick(view v) {             startservice(new intent(getapplication(), myservice.class));             }     });     stopservice.setonclicklistener(new onclicklistener() {          @override         public void onclick(view v) {             stopservice(new intent(getapplication(), myservice.class));            }     });     } } 

myservice.java

package com..service;  import android.app.service; import android.content.intent; import android.os.ibinder; import android.widget.toast;  public class myservice extends service {     @override     public void oncreate() {         // todo auto-generated method stub     super.oncreate();     toast.maketext(this, "service created", toast.length_long).show();      } @override public int onstartcommand(intent intent, int flags, int startid) {     // todo auto-generated method stub     toast.maketext(this, "service started", toast.length_long).show();     intent.getstringextra("my_message");     //stopself();     return super.onstartcommand(intent, flags, startid); } @override public void ondestroy() {     // todo auto-generated method stub     super.ondestroy();     toast.maketext(this, "service stopped", toast.length_long).show();  }  @override public ibinder onbind(intent arg0) {     // todo auto-generated method stub     return null; }  } 

this code not working. service starting when startservice calling in mainactivity. when dialer open not working.


Comments

Popular posts from this blog

magento2 - Magento 2 admin grid add filter to collection -

Android volley - avoid multiple requests of the same kind to the server? -

Combining PHP Registration and Login into one class with multiple functions in one PHP file -