android - App Crash Boot the Phone -
i totally confused why app crashing when boot phone.
my androidmanifest.xml
:
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.callmenew" android:versioncode="1" android:versionname="1.0" > <uses-permission android:name="android.permission.internet"/> <uses-permission android:name="android.permission.call_phone" /> <uses-permission android:name="android.permission.access_network_state" /> <uses-permission android:name="android.permission.read_phone_state"/> <uses-permission android:name="android.permission.use_sip" /> <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-permission android:name="android.permission.disable_keyguard" /> <uses-permission android:name="android.permission.receive_boot_completed" /> <uses-feature android:name="android.hardware.sip.voip" /> <uses-feature android:name="android.hardware.wifi" /> <uses-feature android:name="android.hardware.microphone" /> <uses-sdk android:minsdkversion="7" android:targetsdkversion="15" /> <application android:label="@string/app_name" android:theme="@style/apptheme" android:icon="@drawable/appslogo"> <service android:name=".mservice"/> <activity android:name=".login"> <intent-filter> <action android:name="android.intent.action.main" /> <category android:name="android.intent.category.launcher" /> </intent-filter> </activity> <activity android:name=".searchcall" android:screenorientation="portrait"/> <activity android:name=".softwarepassionview" android:screenorientation="portrait"/> <activity android:name=".mainactivity" android:screenorientation="portrait"/> <activity android:name=".outcall" android:screenorientation="portrait"/> <receiver android:name=".incomingcallreceiver" android:label="call receiver" android:screenorientation="portrait"/> <receiver android:name="com.callmenew.mybroadcastreceiver" android:enabled="true" > <intent-filter> <action android:name="android.intent.action.boot_completed" /> <category android:name="android.intent.category.default" /> </intent-filter> </receiver> <activity android:name=".incomingcallevent" android:screenorientation="portrait"/> <activity android:name=".city" android:nohistory="true" android:label="city" android:screenorientation="portrait"/> <activity android:name=".createad" android:label="create advertisement" android:screenorientation="portrait"/> <activity android:name=".rgtruser1" android:label="create account" android:screenorientation="portrait"/> </application>
my mybroadcastreceiver
:
public class mybroadcastreceiver extends broadcastreceiver { @override public void onreceive(context arg0, intent arg1) { // intent startserviceintent = new intent(arg0, searchcall.class); // startserviceintent.putextra("starts", "starts"); // startserviceintent.setflags(intent.flag_activity_new_task); // arg0.startactivity(startserviceintent); toast.maketext(arg0.getapplicationcontext(), "start", toast.length_long).show(); } }
myservice class:-
@override public void oncreate() { super.oncreate(); toast.maketext(this, "service created...", toast.length_long).show(); log.i(tag, "service created..."); } @override public int onstartcommand(intent intent, int flags, int startid) { super.onstartcommand(intent, flags, startid); toast.maketext(this, "debug: syncservice onstartcommand", toast.length_long).show(); sharedpreferences settings = getsharedpreferences("calldata", context.mode_private); sipaddress = settings.getstring("sipaddress", ""); // sipaddress= intent.getstringextra("sipaddress"); // sipcallid = intent.getstringextra("sipaddress"); toast.maketext(mservice.this, "sipaddress = "+sipaddress+" sipcallid ="+sipcallid, toast.length_long).show(); intentfilter filter2 = new intentfilter(); filter2.addaction("android.sipdemo.incoming_call"); callreceiver2 = new incomingcallreceiver(); this.registerreceiver(callreceiver2, filter2); initializemanager(sipaddress); return start_sticky; }
log cat:-
04-20 16:58:46.179: e/androidruntime(294): fatal exception: main 04-20 16:58:46.179: e/androidruntime(294): java.lang.runtimeexception: unable instantiate receiver com.callmenew.mybroadcastreceiver: java.lang.classnotfoundexception: com.callmenew.mybroadcastreceiver 04-20 16:58:46.179: e/androidruntime(294): @ android.app.activitythread.handlereceiver(activitythread.java:2100) 04-20 16:58:46.179: e/androidruntime(294): @ android.app.activitythread.access$1500(activitythread.java:123) 04-20 16:58:46.179: e/androidruntime(294): @ android.app.activitythread$h.handlemessage(activitythread.java:1197) 04-20 16:58:46.179: e/androidruntime(294): @ android.os.handler.dispatchmessage(handler.java:99) 04-20 16:58:46.179: e/androidruntime(294): @ android.os.looper.loop(looper.java:137) 04-20 16:58:46.179: e/androidruntime(294): @ android.app.activitythread.main(activitythread.java:4424) 04-20 16:58:46.179: e/androidruntime(294): @ java.lang.reflect.method.invokenative(native method) 04-20 16:58:46.179: e/androidruntime(294): @ java.lang.reflect.method.invoke(method.java:511) 04-20 16:58:46.179: e/androidruntime(294): @ com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:784) 04-20 16:58:46.179: e/androidruntime(294): @ com.android.internal.os.zygoteinit.main(zygoteinit.java:551) 04-20 16:58:46.179: e/androidruntime(294): @ dalvik.system.nativestart.main(native method) 04-20 16:58:46.179: e/androidruntime(294): caused by: java.lang.classnotfoundexception: com.callmenew.mybroadcastreceiver 04-20 16:58:46.179: e/androidruntime(294): @ dalvik.system.basedexclassloader.findclass(basedexclassloader.java:61) 04-20 16:58:46.179: e/androidruntime(294): @ java.lang.classloader.loadclass(classloader.java:501) 04-20 16:58:46.179: e/androidruntime(294): @ java.lang.classloader.loadclass(classloader.java:461) 04-20 16:58:46.179: e/androidruntime(294): @ android.app.activitythread.handlereceiver(activitythread.java:2095) 04-20 16:58:46.179: e/androidruntime(294): ... 10 more
use following permission
<uses-permission android:name="android.permission.receive_boot_completed" > </uses-permission>
then declare receiver like
<receiver android:name="com.callmenew.mybroadcastreceiver" android:enabled="true" > <intent-filter> <action android:name="android.intent.action.boot_completed" /> <category android:name="android.intent.category.default" /> </intent-filter> </receiver>
then in onreceive in code not sure whether can show toast directly there. if not can start service , there show toast. (in last part havent tried , correct me if wrong)
Comments
Post a Comment