AWS S3サーバーからデータベースにアクセスするAndroidアプリケーションを開発しようとしています。 接続文字列、つまりaws S3 server bucketから取得したdbリンクを追加するだけで、通常の方法でやり直してみました。私はそのバケツにも許可を与えました。しかし、私はアプリを実行すると、 "データベースを開くことができる"と言います。私はそれを簡単にやり遂げる方法はありますか? 下記のDBアダプタコードの接続コードを確認できます。AWS S3サーバーに保存されているsqlite DBをAndroidのアプリケーションにリモートで接続するには
public class DataBaseHelperAWS extends SQLiteOpenHelper {
private SQLiteDatabase myDataBase;
Date d = new Date();
private final Context myContext;
private static String DB_PATH = "https://s3.ap-North-2.amazonaws.com/xxxx/test.db";
public DataBaseHelperAWS(Context context) {
super(context, "https://s3.ap-North-2.amazonaws.com/xxxx/test.db" , null, 1);
this.myContext = context;
}
public void openDataBase() throws SQLException {
//Open the database
try {
String myPath = DB_PATH ;
myDataBase = SQLiteDatabase.openDatabase(myPath, null, SQLiteDatabase.OPEN_READONLY);
} catch (SQLiteException e) {
}
}
public Cursor GetData(String query) throws SQLException {
//Open the database
Cursor resultSet = null;
try {
openDataBase();
resultSet = myDataBase.rawQuery(query, null);
resultSet.moveToFirst();
} catch (SQLException e) {
}
}
public void ExecuteQuery(String query) throws SQLException {
//Open the database
try {
openDataBase();
myDataBase = this.getWritableDatabase();
myDataBase.execSQL(query);
} catch (Exception e) {
}
}
public synchronized void close() {
try {
if (myDataBase != null)
myDataBase.close();
super.close();
} catch (Exception e) {
Log.d(TAG, e.getMessage());
}
}
}
私が試したコードを確認してください。私はローカルのdbアダプタ/ dbhelperクラスを使用して、awsリンクを使用してリモートawsサーバーにアクセスしました。私はそれが正しいアプローチであるかどうかは分かりません。私はアンドロイド開発とawsにも新しいです。