1

個別のサービスファイルを作成せずに、アクティビティ内にサービスを作成することは可能ですか(すべてのボタン、テキストビュー、関数などにアクセスできます)?このようなことを試しましたが、サービスが起動しませんでした。基本的に、アクティビティで実行しているアプリがあり、バックグラウンドで実行したいのですが、コードの修正にあまり多くの作業を費やしたくありません。

編集:これは、アクティビティの代わりにサービスを配置することで得られるlogcatエラーメッセージです。

08-14 10:00:25.076: V/Tagging(3122): On Create
08-14 10:00:25.076: V/Tagging(3122): Service Starting
08-14 10:00:25.086: D/ActivityManager(1580): isSketcherDisabledInCurrentTask():false, ActivityRecord{4109a2a0 com.jimmyc.summer.wificollection/.WiFiLocationApp}
08-14 10:00:25.086: W/ActivityManager(1580): Unable to start service Intent { cmp=com.jimmyc.summer.wificollection/.WiFiLocationApp$MyService }: not found

このようなもの..

public class mainActivity extends Activity {

  onCreate(){
    Intent intent = new Intent(this, HelloService.class);
    startService(intent);
  }

  public class HelloService extends Service {

    onCreate(){
    }

    onStartCommand(){
    }

  }

}
4

3 に答える 3

2

はい、これは可能です。マニフェストにサービスを登録するだけです

于 2012-08-14T08:36:36.353 に答える
2

はい、可能です。

で実行するコードを に移動し、activityservice行った方法でサービスを呼び出すだけですonCreate

サービスは、Android マニフェストから Service を拡張する別のクラスにある必要があります。また、このサービスはマニフェストに記載する必要があります。

この方法でボタンをサービスに追加し、サービス内の機能を実行させることもできます。したがって、サービスをバックグラウンドで実行し、サービスを制御するアクティビティで UI を実行できます。

于 2012-08-14T08:44:07.787 に答える
0

アクティビティをクラスにバインドすることになりました。これでうまくいきました。

于 2012-08-15T04:25:01.180 に答える