我有一个phonestatelistener: 我怎么能在这里开始服务? 我试过了:
startService(new Intent(this, TTS.class));
我怎么能为我工作
private PhoneStateListener mPhoneListener = new PhoneStateListener() {
@SuppressLint("SdCardPath")
public void onCallStateChanged(int state, String incomingNumber) {
try {
switch (state) {
case TelephonyManager.CALL_STATE_RINGING:
//i want to start service
startService(new Intent(this, TTS.class));
答案 0 :(得分:0)
致电时
startService(new Intent(this, TTS.class));
new Intent()
的第一个参数必须是Context
。通常您可以从Service
或Activity
拨打此邮件,这两个邮件都会延伸Context
。
在您的情况下,您的this
参数是类PhoneStateListener
,但不会扩展Context
。我认为这是一个私人的内部阶级。您需要像这样指定外部类:
startService(new Intent(MyActivity.this, TTS.class));
如果您的外部类是活动,那么MyActivity
应该是活动的名称。如果外部类是服务,则MyActivity
应该是服务的名称。