0

サービスでアラーム マネージャを開始する際に問題が発生しています。サービスは、次のコードを使用して mainActivity から開始されます。

Intent intent = new Intent(this, YourService.class);
        startService(intent);

このコードを使用して、マニフェストでサービスを定義しました。

<activity
        android:name=".YourService"
        android:label="@string/app_name" 
        android:screenOrientation="portrait">
        <intent-filter>
                <action android:name="com.sjjgames.abortionappnoads.YOURSERVICE" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>
<service android:name=".YourService" />

「YourService」クラスは次のようになります。

package com.sjjgames.abortionappnoads;
import android.app.Service;
import android.content.Context;
import android.content.Intent;
import android.os.IBinder;

public class YourService extends Service
{
    Alarm alarm = new Alarm();
    public void onCreate()
    {
        super.onCreate();       
    }

    public void onStartCommand(Context context,Intent intent, int startId)
    {
        alarm.SetAlarm(context);
    }

    @Override
    public IBinder onBind(Intent intent) 
    {
        return null;
    }
}

サービスは「Alarm」というクラスを呼び出すはずですが、サービスが開始されないようです。

4

1 に答える 1

0

署名が間違っているため、基本クラスをオーバーライドしていませOnStartCommandん。. 注釈をint使用すると、これらのエラーをキャッチできます。サービスの実行方法に対応するコード@Overrideの 1 つを返すようにしてください。START_詳細については、サービスのライフサイクルを参照してください。

@Override
public int onStartCommand(Intent intent, int flags, int startId) {
于 2013-01-26T07:41:42.550 に答える