のAndroidを使用しているとき、私はすべての異なる用語で混乱しています:活動、サービス...アンドロイド:STARTSERVICE(への呼び出しの後、クラスの取得)
今私は、サービスを作成します。
startService(new Intent(this, RingerServer.class));
そして、このサービスがスレッドを開始します。このサービスで
public class RingerServer extends Service {
public void onCreate() {
super.onCreate();
new Thread(new Ringer()).start();
}
public class Ringer implements Runnable { ... }
public void refuseConnection() { ... }
}
、RingerServerは、私はまた、私が使用したいメソッドを持っています。私はRingerServerへの参照を保持したいと思います。私は基本的に、サービスを作成したアクティビティがrefuseConnection()を呼び出せるようにしたいが、そのメソッドを静的にしたくない。
startServiceはComponentNameを返します。そのため、私はRingerServerにキャストしようとしていますが、動作していないようです。私はそれがgetClass()を持っていることを確認し、getClassName()は私に正しいクラスを与えます。私はgetClass()を正しく使用することはできませんでした。
新しく作成されたRingerServerクラスへの参照を保持する方法はありますか?私はこれが自明だと確信していますが、私は今すぐ立ち往生しています。
は、次の2つのオプション
サービスの1.Override onStartCommandを持ち、行動を使用して意図してサーバを起動
ジェームズ
アクティビティ=ユーザが対話できるUI。サービスにはUIはなく、バックグラウンドで実行されます。 – Raunak
でもまだクラスですが、サービス上でいくつかのメソッドを呼び出すことはできませんか? – James