2016-02-25 20 views
1
package com.soft.mash.contactmanager; 

import android.app.Activity; 
import android.os.Bundle; 
import android.telephony.SmsManager; 
import android.widget.Toast; 

public class SendSms extends Activity { 

    SmsManager smsManager ; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
    } 

    public boolean SendMessage(String number, String textMessage) { 
     try { 
      smsManager = (SmsManager) new SmsManager.getDefault(); 
      smsManager.sendTextMessage(number, null, textMessage, null, null); 
      return true; 
     }catch (Exception e) 
     { 
      Toast.makeText(getApplicationContext(),"SMS sending failed",Toast.LENGTH_SHORT).show(); 
      e.printStackTrace(); 
      return false; 
     } 
    } 
} 

爲什麼無法解析符號SmsManager.getDefault()

cannot resolve symbol 'getDefault()' 

在這裏出現?

在一個類似的StackOverflow問題的答案建議「無效緩存並重新啓動」。但這裏沒有解決我的問題。

+2

use smsManager = SmsManager.getDefault();而不是TypeCasting –

+0

@NickIsaacs,謝謝。解決了。 – MASh

+0

不客氣。 –

回答

1

我在做什麼錯在這裏是我試圖用new創造SmsManagerInstance。但是這裏需要的僅僅是獲得SmsManager的默認Instance

2

使用smsManager = SmsManager.getDefault();而不是類型轉換