2011-01-25 12 views
2

AndroidでGroomDroid Webサーバーを起動しようとしていますが、起動すると黒いウィンドウが表示されます。アプリケーションをバックグラウンドで実行する

enter image description here

私が示されているスクリーンずにバックグラウンドでこのアプリを起動したいと思います。

私は次のように、このアプリを起動しています:

Intent webServer = new Intent(); 
webServer.setClassName("net.allory.groom","net.allory.groom.GroomDroid"); 
startActivity(webServer); 

私もstartService(webServer);と試みたが、動作するようには思えません。

誰でも助けてくれますか?

+0

'Activity'は、ユーザーインターフェイスを表し、バックグラウンドで起動することはできません。バックグラウンド処理が必要な場合は、 'Service'を書く必要があります。 –

答えて

0

リンス、

エミュレータのように見えます。 eclipseを使用している場合は、 'Run Configurations ...'に移動して 'Launch Actions'を 'Do Nothing'に変更してください。

アプリを常にヘッドレスにしますか?

フランク

+0

こんにちはフランク、私は日食、テキストエディタを使用していないよ。あなたが私に言った変更を行うコードで何が変わるのか知っていますか?はい、バックグラウンドでアプリからサーバーを実行したいのですが、特定のURLにユーザーを送信します。 – lince

+0

マニフェストXMLのメイン画面のをコメントアウトしてみましたか? –

+0

私がそれをコメントアウトすると、私はエラーアプリケーションがインストールされていない(今エミュレータ/ sdkを試している)。私はphonegapを使用していることを言うのを忘れていました。とにかく、私は別のアプローチをとるつもりです。あなたの助けに感謝フランク:) – lince

1

あなたはサービスにあなたの背景のロジックを移動する必要があり、継続的な通知を作成し実行しているとき。

通知を選択するとアクティビティ(ui)が開始され、サービスはハンドラを使用してそのデータを通知できます。また

、あなたがsingleTaskにあなたの活動のlaunchModeを指定した場合:

<activity android:name=".activity.YourActivity" 
    android:launchMode="singleTask" 
    android:alwaysRetainTaskState="true" 
    android:clearTaskOnLaunch="false" 
    android:finishOnTaskLaunch="false"> 
    <intent-filter> 
     <action android:name="android.intent.action.MAIN" /> 
     <category android:name="android.intent.category.DEFAULT" /> 
    </intent-filter> 
</activity> 

やアプリケーションにあなたのサービスが既に(あなたがアプリケーションをすでに始めましたと言うと、今のアイコンを押して実行しているかどうかをチェック開始もう一度)、サービスを再開したり、何も表示したりする代わりに、まったく同じタスクを開始することができます。

この説明があまりにも明確ではないかもしれないが、あなたはより多くの詳細が必要な場合は私に知らせて:)

関連する問題