Android中未处理的异常

Android中未处理的异常,android,exception,exception-handling,unhandled,Android,Exception,Exception Handling,Unhandled,好了,伙计们,我是安卓的新手。我正在开发一个登录页面,将用户登录到后端服务器。我正在使用的后端服务是Parse。因此,当我在onclick方法中包含一些代码来写入数据时,我会得到一个错误,显示存在未处理的异常 以下是页面的xml文件: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" andro

好了,伙计们,我是安卓的新手。我正在开发一个登录页面,将用户登录到后端服务器。我正在使用的后端服务是Parse。因此,当我在onclick方法中包含一些代码来写入数据时,我会得到一个错误,显示存在未处理的异常

以下是页面的xml文件:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" >

    <TextView
        android:id="@+id/acchead"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:gravity="center"
        android:text="Create a FFOD account"
        android:textSize="25dp" />

    <EditText
        android:id="@+id/fnameffod"
        android:layout_width="180dp"
        android:layout_height="wrap_content"
        android:layout_marginLeft="120dp"
        android:layout_marginTop="40dp" />

    <TextView
        android:id="@+id/lname"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_marginTop="100dp"
        android:gravity="center"
        android:text="Last Name"
        android:textSize="20dp" />

    <EditText
        android:id="@+id/lnameffod"
        android:layout_width="180dp"
        android:layout_height="wrap_content"
        android:layout_marginLeft="120dp"
        android:layout_marginTop="90dp" />

       <TextView
        android:id="@+id/uname"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/userffod"
        android:layout_alignBottom="@+id/userffod"
        android:layout_alignParentLeft="true"
        android:gravity="center"
        android:text="Username"
        android:textSize="20dp" />

    <EditText
        android:id="@+id/userffod"
        android:layout_width="180dp"
        android:layout_height="wrap_content"
        android:layout_marginLeft="120dp"
        android:layout_marginTop="140dp" />

     <TextView
        android:id="@+id/email"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/emailffod"
        android:layout_alignBottom="@+id/emailffod"
        android:layout_alignParentLeft="true"
        android:gravity="center"
        android:text="Email"
        android:textSize="20dp" />

    <EditText
        android:id="@+id/emailffod"
        android:layout_width="180dp"
        android:layout_height="wrap_content"
        android:layout_marginLeft="120dp"
        android:layout_marginTop="190dp" />

    <TextView
        android:id="@+id/pass"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/passffod"
        android:layout_alignBottom="@+id/passffod"
        android:layout_alignParentLeft="true"
        android:gravity="center"
        android:text="Password"
        android:textSize="20dp" />

    <EditText
        android:id="@+id/passffod"
        android:layout_width="180dp"
        android:layout_height="wrap_content"
        android:layout_marginLeft="120dp"
        android:layout_marginTop="240dp"
        android:password="true" />


    <ImageButton
        android:id="@+id/Btwitter1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignRight="@+id/passffod"
        android:layout_marginBottom="16dp"
        android:layout_marginRight="26dp"
        android:src="@drawable/twitter_icon" />

    <ImageButton
        android:id="@+id/Bfacebook1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBottom="@+id/Btwitter1"
        android:layout_toLeftOf="@+id/Bcreate"
        android:src="@drawable/facebook_icon2" />


    <Button
        android:id="@+id/Bcreate"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/pass"
        android:layout_marginBottom="14dp"
        android:layout_alignLeft="@+id/passffod"
        android:gravity="center"
        android:text="Create Account" />

    <TextView
        android:id="@+id/fbtwitt"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_below="@+id/Bcreate"
        android:gravity="center"
        android:text="Use FACEBOOK or TWITTER account? Touch any one!"
        android:textSize="17dp" />

    <TextView
        android:id="@+id/fname"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/fnameffod"
        android:layout_alignBottom="@+id/fnameffod"
        android:layout_alignRight="@+id/pass"
        android:gravity="center"
        android:text="First Name"
        android:textSize="15dp" />

</RelativeLayout>
请注意,我刚刚将parse.initialize中的实际值更改为简单的appkeys

以下是cat o/p的日志:

>02-07 10:22:17.242: D/com.parse.ParseBroadcastReceiver(284): received >android.intent.action.USER_PRESENT
>02-07 10:22:33.101: W/KeyCharacterMap(284): No keyboard for id 0
>02-07 10:22:33.101: W/KeyCharacterMap(284): Using default keymap: /system/usr/keychars/qwerty.kcm.bin
>02-07 10:22:55.262: W/dalvikvm(284): threadid=7: thread exiting with uncaught exception (group=0x4001d800)
>02-07 10:22:55.335: E/AndroidRuntime(284): FATAL EXCEPTION: AsyncTask #1
>02-07 10:22:55.335: E/AndroidRuntime(284): java.lang.RuntimeException: An error occured while executing doInBackground()
>02-07 10:22:55.335: E/AndroidRuntime(284):     at android.os.AsyncTask$3.done(AsyncTask.java:200)
>02-07 10:22:55.335: E/AndroidRuntime(284):     at java.util.concurrent.FutureTask$Sync.innerSetException(FutureTask.java:273)
>02-07 10:22:55.335: E/AndroidRuntime(284):     at java.util.concurrent.FutureTask.setException(FutureTask.java:124)
>02-07 10:22:55.335: E/AndroidRuntime(284):     at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:307)
>02-07 10:22:55.335: E/AndroidRuntime(284):     at java.util.concurrent.FutureTask.run(FutureTask.java:137)
>02-07 10:22:55.335: E/AndroidRuntime(284):     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1068)
>02-07 10:22:55.335: E/AndroidRuntime(284):     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:561)
>02-07 10:22:55.335: E/AndroidRuntime(284):     at java.lang.Thread.run(Thread.java:1096)
>02-07 10:22:55.335: E/AndroidRuntime(284): Caused by: java.lang.IllegalArgumentException: Username cannot be missing or blank
>02-07 10:22:55.335: E/AndroidRuntime(284):     at com.parse.ParseUser.signUp(ParseUser.java:232)
>02-07 10:22:55.335: E/AndroidRuntime(284):     at com.parse.ParseUser$1.run(ParseUser.java:273)
>02-07 10:22:55.335: E/AndroidRuntime(284):     at com.parse.ParseUser$1.run(ParseUser.java:1)
>02-07 10:22:55.335: E/AndroidRuntime(284):     at com.parse.BackgroundTask.doInBackground(BackgroundTask.java:39)
>02-07 10:22:55.335: E/AndroidRuntime(284):     at com.parse.BackgroundTask.doInBackground(BackgroundTask.java:1)
>02-07 10:22:55.335: E/AndroidRuntime(284):     at android.os.AsyncTask$2.call(AsyncTask.java:185)
>02-07 10:22:55.335: E/AndroidRuntime(284):     at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305)
>02-07 10:22:55.335: E/AndroidRuntime(284):     ... 4 more
>02-07 10:23:06.851: I/Process(284): Sending signal. PID: 284 SIG: 9

这是一项非常紧迫的要求。我将非常感激能得到的一切帮助。谢谢大家!

问题可能是因为这条线

username = user_name.getText().toString();
我认为您可能没有在EditText中保存任何可能返回空值的值,这会导致此问题

或者,因为这是EditText,而不是
user.getText().toString()
我建议您使用
user_name.getEditableText().toString()


问题是,因为这里的值是空的,所以会导致其他类中出现异常

您的ParseUser.signup()抛出错误:IllegalArgumentException,请检查或粘贴ParseUser.signup的代码。
>02-07 10:22:55.335:E/AndroidRuntime(284):原因:java.lang.IllegalArgumentException:用户名不能丢失或为空
:这一行说明了它的确切含义。请双击日志猫中的
02-07 10:22:55.335:E/AndroidRuntime(284):在com.parse.ParseUser.signUp(ParseUser.java:232)
行。检查正在传递的用户名值。Andro Selva:使用getEditableText()似乎没有什么帮助。你得到了用户名的一些值还是它是空的?@jitendrasharma:注册是解析服务提供的一个函数。LogCat仍然非常相似。我在logcat的开头看到一个未处理的线程异常。为什么会这样?@JitendraSharma:我在用parse。请访问www.parse.com
username = user_name.getText().toString();