hi i am trying to play TTS when i recieve ringtone, i tried a lot of ways 
to do it, however without success..here is my last try,i am really despair, 
i am working on this about 4 days without success, i hope someone here will 
help me!

in the oncreate function i call:

     tm = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);
      tm.listen(mPhoneListener, PhoneStateListener.LISTEN_CALL_STATE);

here is he implementation of the phonestatelistener:


            private PhoneStateListener mPhoneListener = new 
PhoneStateListener() {

  @SuppressLint("SdCardPath")
public void onCallStateChanged(int state, String incomingNumber) {

   try {
    switch (state) {
    case TelephonyManager.CALL_STATE_RINGING:

        
     Toast.makeText(HandsFree.this, "CALL RING", Toast.LENGTH_SHORT).show();


     startService(new Intent(HandsFree.this,TTS.class));     
  


    public static class TTS extends Service implements 
TextToSpeech.OnInitListener, OnUtteranceCompletedListener {
        private TextToSpeech mTts;
        private String spokenText="hello";
    
        @Override
        public void onCreate() {
            mTts = new TextToSpeech(this, this);
            // This is a good place to set spokenText
        }
    
        public void onInit(int status) {
            if (status == TextToSpeech.SUCCESS) {
                int result = mTts.setLanguage(Locale.US);
                if (result != TextToSpeech.LANG_MISSING_DATA && result != 
TextToSpeech.LANG_NOT_SUPPORTED) {
                    mTts.speak(spokenText, TextToSpeech.QUEUE_FLUSH, null);
                }
            }
        }
    
        public void onUtteranceCompleted(String uttId) {
            stopSelf();
        }
    
        @Override
        public void onDestroy() {
            if (mTts != null) {
                mTts.stop();
                mTts.shutdown();
            }
            super.onDestroy();
        }
    
        @Override
        public IBinder onBind(Intent arg0) {
            return null;
        }
    }

and this is my manifest file:

    <uses-permission android:name="android.permission.READ_PHONE_STATE"/>
    <uses-permission android:name="android.permission.WRITE_SETTINGS"/>
    <uses-permission 
android:name="android.permission.CHANGE_NETWORK_STATE"/>
    <uses-permission android:name="android.permission.MODIFY_PHONE_STATE" />
    <uses-permission android:name="android.permission.UPDATE_DEVICE_STATS" 
/>
    <uses-permission 
android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" 
/>
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission 
android:name="android.permission.CALL_PHONE"></uses-permission>
    <uses-permission android:name="android.permission.READ_CONTACTS" /> 
    <uses-permission 
android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
    </manifest>

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to