2009-07-21 9 views
8

私はBluetoothを使用し、ピアモバイル内のファイルを検索してダウンロードするJ2MEアプリケーションを作成しました。私はアプリケーションをバックグラウンドで実行させたいと思います。電話をかけるとメッセージが出て、数秒後に再開します。誰かがこの経験を共有してくれましたか?バックグラウンドでMidletを実行する方法はありますか?J2MEアプリケーションをバックグラウンドで実行する方法は?

  Display.getDisplay (this).setCurrent (null); 

バックスクリーンを取得するには、以下を使用します:あなたのMIDletクラスに次のように使用してバックグラウンドにJ2MEアプリケーションを設定する

+0

既にあります。http://stackoverflow.com/questions/1084384/how-do-i-minimize-a-j2me-app –

答えて

10

myCanvasは、キャンバスのインスタンス

ある
  Display.getDisplay (this).setCurrent (myCanvas); 

psあなたのミッドレットが隠されている間も、スレッドやタイマーを使ってバックグラウンドでやることができます。

p.s.2:これは一部のモデルでは機能しません。 (Nokia s60、SonyEricssonでは動作しますが、Nokia s40、Samsungなどでは動作しません)

2

デバイスがバックグラウンドでアプリケーションを実行できるかどうかは、マルチタスクの能力によって決まります。より低コストのデバイスよりもバックグラウンド実行をサポートする可能性が高い バックグラウンドでの場合: - 。

private Display display = Display.getDisplay(this); 
private Displayable previousDisplayable; 

public void toBack() { 
previousDisplayable = display.getCurrent(); 
display.setCurrent(null); 
} 

そして、フォアグランドに来て: -

public void toFront() { 
display.setCurrent(previousDisplayable); 
} 

しかし、それはすべてのデバイスをサポートしていないことに注意してください。 (Nokia s60、SonyEricssで動作しますノキアs40、サムスンなどではない)。

関連する問題