2011-03-23 76 views
1

我试图执行一个样本意向申请,但我在java文件中获取这些错误:dial_action不能得到解决或无法在现场

DIAL_ACTION不能得到解决或无法在现场
NEW_TASK_LAUNCH不能得到解决或无法在现场

这里是我的代码:

package android_programmers_guide.AndroidTeleDial; 

import android.app.Activity; 
import android.os.Bundle; 
import android.content.Intent; 
import android.net.Uri; 


public class AndroidTeleDial extends Activity { 
    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 
     Intent DialIntent=new Intent(Intent.DIAL_ACTION,Uri.parse("tel:5551212")); 
     DialIntent.setLaunchFlags(Intent.NEW_TASK_LAUNCH); 
     startActivity(DialIntent); 
    } 
} 

回答

2

这是Intent.ACTION_DIAL

为了避免这种错误,如果您使用的是eclipse,请使用自动补全功能:输入单词时,按ctrl +空格键,它将打开一个可能的补全列表。

这样,试图自动完成Intent.DIAL你会发现Intent类中没有这样的成员。

0

我不认为setLaunchFlags()被再次使用。我想你只需要设置的标志:

Intent.FLAG_ACTIVITY_NEW_TASK 

而作为@bigstones状态,你也应该使用Intent.ACTION_DIAL

0

phone dialer example

试试这个代码。

package android_programmers_guide.AndroidPhoneDialer; 

import android.app.Activity; 
import android.os.Bundle; 
import android.content.Intent; 
import android.net.Uri; 

public class AndroidPhoneDialer extends Activity { 
    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 
     Intent DialIntent = new Intent(Intent.ACTION_DIAL,Uri.parse("tel:5551212")); 
     DialIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
     startActivity(DialIntent); 
    } 
} 
相关问题