私のクラスにはこのようなメソッドがあります。Activity
@Override
public void onDestroy() {
Log.i("onDestory: ", "Inside OnDestory!");
bluetoothCommunicator.destroyedApp();
super.onDestroy();
}
メソッドは次のdestroyedApp()
ようになります。
public void destroyedApp() {
if(server != null)
server.destroy();
}
server
拡張するクラスのインスタンスはどこにありますかThread
シナリオは次のとおりです。
初めてアプリケーションを開いています。onCreate
メソッド内で、を設定するbluetoothクラスの新しいインスタンスを作成しますBluetoothServerSocket
。これは正常に機能し、ファイルを携帯電話に転送できます。
これは、スレッドがまだ生きているため、アプリケーションをバックグラウンドで使用している場合にも機能します。
だが
私がアプリケーションを殺しているとき、Activity Life Cycle
このonDestroy()
メソッドは、Androidフレームワークによって呼び出される必要があります。そして、もう一度アプリケーションを起動すると、onCreate
メソッドが呼び出されるはずですが、のインスタンスBluetoothServerSocket
が作成されているようには見えません。LogCat
Bluetoothファイルを送信するデバイスは次のようにしか表示しないため、情報はありません。
Error Log:
Write Error:
Transport endpoint is not connected
__obex_connect:
error=-2
Unable to connect to the server
Error
BluetoothServerSocket
これは、が「生きている」わけではないことを教えてくれます
これをどのように達成できるかについての提案はありますか?