1

を介して参照している、開いているデータベースの名前を取得したいSqliteOpenHelper。API レベル 14 ( getDatabasename) で問題ありません。しかし、API レベル 10 で動作する必要があります (厳しい要件 - これは私が受講しているクラスのためのものです)。

これまでに思いついた唯一のアイデアは、将来使用するためにデータベース名を自分で保存することです。データベース名を必要とするクラスに、または のサブクラスのメンバーとして保存しますSqliteOpenHelper。より良い方法はありますか?ありがとう。

4

2 に答える 2

1

しかし、データベースを開いて SqliteOpenHelper のコンストラクターに渡してから、データベース名を既に持っていませんか? したがって、SqliteOpenHelper をサブクラス化し、メソッド getDatabaseName() を自分で作成して、必要なことを実行させます。これは、オブジェクト指向のプリンシパルに関するものと思われます。コードが必要な場合、または間違っている場合はお知らせください。

コードをgrepしました。探している関数は、コンストラクターに設定した変数を格納するだけです。

public String getDatabaseName() { mName を返します。}

だからもう一度あなた自身の http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android/4.2.1_r1.2/android/database/sqlite/SQLiteOpenHelper.java#SQLiteOpenHelperを作ってください.getDatabaseName%28%29

于 2013-04-20T22:50:56.833 に答える