0

これが私のプログラムです。

public class MainActivity extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_main);

        InitializeSQLCipher();
    }



         private void InitializeSQLCipher() {
                SQLiteDatabase.loadLibs(this);

                File databaseFile = getDatabasePath("demo.db");

                databaseFile.mkdirs();

                databaseFile.delete();

                SQLiteDatabase database = SQLiteDatabase.openOrCreateDatabase(databaseFile, "test123", null);


                database.execSQL("create table t1(a, b)");

                database.execSQL("insert into t1(a, b) values(?, ?)", new Object[]{"one for the money",
                                                                                "two for the show"});
         }
}

このリンクにあるこのプログラムにいくつかの3つのライブラリを追加しました........ https://github.com/sqlcipher/android-database-sqlcipher

今私のクエリは、次のエラーが発生しています。完璧な解決策を得るために克服する方法...

04-12 11:47:27.379: E/AndroidRuntime(2163): FATAL EXCEPTION: main
04-12 11:47:27.379: E/AndroidRuntime(2163): java.lang.NoClassDefFoundError: net.sqlcipher.database.SQLiteDatabase
04-12 11:47:27.379: E/AndroidRuntime(2163): at com.example.testproject.MainActivity.InitializeSQLCipher(MainActivity.java:43)   
04-12 11:47:27.379: E/AndroidRuntime(2163): at com.example.testproject.MainActivity.onCreate(MainActivity.java:37)
04-12 11:47:27.379: E/AndroidRuntime(2163): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
04-12 11:47:27.379: E/AndroidRuntime(2163): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1611) .... and so on ...
4

2 に答える 2

1

ライブラリが見つかりません。jar の場合は、libs フォルダーに入れてプロジェクトに追加しましたか? エクスポートタブでエクスポートしましたか?ライブラリ プロジェクトの場合、ライブラリとして追加しましたか? もしそうなら、それは project.properties に参照を追加しましたか?

それらがすべて正しい場合は、make clean を試してください。Eclipse はすべてを再コンパイルする必要があるかもしれません。

于 2013-04-12T06:50:21.620 に答える