Android の新しいバージョンでは、メイン スレッドでインターネット タスクを使用することはできません。使用するには、新しいスレッドを作成する必要があります。スレッドを使用しても問題はありません。
MySQL データベースに接続する単純なクラスがあります。connection
オブジェクトを含む変数を初期化しjava.sql.Connection
ます。オブジェクトをgetConnection
返すメソッドがあります。
メインスレッドで、データベースにクエリを実行できるようにしたい:
PreparedStatement query = this.dbManager.getConnection().prepareStatement("SELECT ...");
データベース クラス はDatabaseManager
Runnable を実装しており、それを使用してスレッドを作成したため、そのメソッドを呼び出すことができません。効果はありません。
this.dbManager = new DatabaseManager();
new Thread(this.dbManager).start();
スレッドでメソッドを呼び出すにはどうすればよいですか? たとえば、ユーザーが UI の追加ボタンをクリックすると、プログラムは待機中のアイコンを表示し、クエリを実行してアイコンを非表示にする必要があります。