1
我創建傳入呼叫接收活動SipDemo
。我的活動有兩個按鈕「接受呼叫」和「拒絕呼叫」。當我接到來電時,我自己的活動開放,如 ---->來電類---->onReceive()
---->去我的電話選擇活動。 這裏是這個上面的兩個按鈕,如接受和拒絕呼叫。但是當我點擊「接受電話」時。 A Nullpointer Exception
生成。它在SipAudiocall傳入;SipDemo的onReceive()SipAudioCall NullPointerException給
這是新來的學員: -
static SipAudioCall incomingCall = null;
@Override
public void onReceive(final Context context, Intent intent) {
Intent startActivity = new Intent();
startActivity.setClass(context, Mycall.class);
startActivity.setAction(IncomingCallReceiver.class.getName());
startActivity.setFlags(
Intent.FLAG_ACTIVITY_NEW_TASK
| Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS);
context.startActivity(startActivity);
}
public static void acceptCall() {
incomingCall.sendDtmf(9);
try {
incomingCall.sendDtmf(9);
incomingCall.answerCall(200);
//wtActivity.gototimer("i");
} catch (SipException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// wtActivity.gototimer("i");
}
public void rejectCaLL() {
try {
incomingCall.endCall();
} catch (SipException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
這是我的電話接活動類: -
public class Mycall extends Activity {
Button acct;
IncomingCallReceiver incomingCallReceiver;
@Override
public void onCreate(Bundle savedInstanceState) {
// Note that none of the preferences are actually defined here.
// They're all in the XML file res/xml/preferences.xml.
super.onCreate(savedInstanceState);
setContentView(R.layout.my);
acct = (Button) findViewById(R.id.button1);
acct.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
IncomingCallReceiver.acceptCall();
}
});
}
}
這是AndroidManifest.xml中: -
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.android.sip">
<application android:icon="@drawable/icon" android:label="SipDemo">
<service android:name=".MService">
</service>
<activity android:name=".WalkieTalkieActivity"
android:configChanges="orientation|keyboardHidden">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
<activity android:name=".SipSettings" android:label="set_preferences"/>
<receiver android:name=".IncomingCallReceiver" android:enabled="true" android:label="Call Receiver">
<intent-filter>
<action android:name="android.SipDemo.INCOMING_CALL" />
</intent-filter>
</receiver>
<activity android:name=".Mycall"
>
</activity>
<activity android:name=".Myclass"/>
</application>
<uses-sdk android:minSdkVersion="9" />
<uses-permission android:name="android.permission.USE_SIP" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-feature android:name="android.hardware.sip.voip" android:required="true" />
<uses-feature android:name="android.hardware.wifi" android:required="true" />
<uses-feature android:name="android.hardware.microphone" android:required="true" />
請專家幫幫我。自1個月以來,我已經涉及這個問題。
我在等待您的回覆。
謝謝
謝謝4回答。是的,我知道了 。但我怎麼能解決它。 PLZ建議 – user2160008 2013-03-13 10:45:57
見編輯答案。不知道這是否有效。你覆蓋了一個接口。我看不出哪一個。請更新您的代碼。 – 2013-03-13 10:55:43
用於晚期回覆。這也不起作用,給我同樣的錯誤。 – user2160008 2013-03-13 12:43:38