Android - Sugar lib NullPointerException

时间:2014-09-02 15:02:25

标签: java android nullpointerexception

我正在使用Sugar lib for android并检查了他们网站上的示例:hier

UserData udata;
udata = new UserData(fname.getText()
                            .toString(), lname.getText()
                            .toString(), email.getText()
                            .toString(), country.getText()
                            .toString(), aboutu.getText()
                            .toString(), pass.getText()
                            .toString());
                    udata.save();  //here is the NullPointerException
                    UserData ud = UserData.findById(UserData.class, 1);

例外:

09-02 16:42:55.399: E/AndroidRuntime(25162): FATAL EXCEPTION: main
09-02 16:42:55.399: E/AndroidRuntime(25162): java.lang.NullPointerException
09-02 16:42:55.399: E/AndroidRuntime(25162): at com.orm.SugarRecord.save(SugarRecord.java:47)
09-02 16:42:55.399: E/AndroidRuntime(25162): at com.arssoft.exp.dialog.RegisterDialog$2.onClick(RegisterDialog.java:114)
09-02 16:42:55.399: E/AndroidRuntime(25162): at android.view.View.performClick(View.java:4475)
09-02 16:42:55.399: E/AndroidRuntime(25162): at android.view.View$PerformClick.run(View.java:18786)
09-02 16:42:55.399: E/AndroidRuntime(25162): at android.os.Handler.handleCallback(Handler.java:730)
09-02 16:42:55.399: E/AndroidRuntime(25162): at android.os.Handler.dispatchMessage(Handler.java:92)
09-02 16:42:55.399: E/AndroidRuntime(25162): at android.os.Looper.loop(Looper.java:176)
09-02 16:42:55.399: E/AndroidRuntime(25162): at android.app.ActivityThread.main(ActivityThread.java:5419)
09-02 16:42:55.399: E/AndroidRuntime(25162): at java.lang.reflect.Method.invokeNative(Native Method)
09-02 16:42:55.399: E/AndroidRuntime(25162): at java.lang.reflect.Method.invoke(Method.java:525)
09-02 16:42:55.399: E/AndroidRuntime(25162): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1046)
09-02 16:42:55.399: E/AndroidRuntime(25162): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:862)
09-02 16:42:55.399: E/AndroidRuntime(25162): at dalvik.system.NativeStart.main(Native Method)

androidManifest:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.arssoft.chechenkitchen"
android:versionCode="1"
android:versionName="1.0" >

<uses-sdk
    android:minSdkVersion="15"
    android:targetSdkVersion="21" />

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name" >
    <activity
        android:name="com.arssoft.exp.MainActivity"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity
        android:name="com.arssoft.exp.RecipeActivity"
        android:label="@string/app_name" >
    </activity>

    <meta-data
        android:name="DATABASE"
        android:value="sugar_recipeuser.db" />
    <meta-data
        android:name="VERSION"
        android:value="1" />
    <meta-data
        android:name="QUERY_LOG"
        android:value="true" />
    <meta-data
        android:name="DOMAIN_PACKAGE_NAME"
        android:value="com.arssoft.exp" />
</application>

</manifest>

下载了糖lib的.jar并在libs文件夹中。 我不知道它为什么抛出这个异常。 我刚刚关注了此网站的示例:hier

1 个答案:

答案 0 :(得分:8)

尝试将此行添加到AndroidManifest.xml中 android:name="com.orm.SugarApp"

示例:

<application android:label="@string/app_name" android:icon="@drawable/icon" android:name="com.orm.SugarApp">