私はAndroid App Developmentを初めて使用しています。私は受信機クラスを持っているアプリを開発しています。私はif文に疲れています。条件が満たされても、その内部のコードは実行されません。私のコードを以下に示します。条件が満たされていてもコードが動作しない場合
MyReceiver.java
package eg.app7;
import android.app.admin.DevicePolicyManager;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.util.Log;
import android.widget.Toast;
public class MyReceiver extends BroadcastReceiver {
public static boolean screenOff;
DevicePolicyManager dpm;
SharedPrefs sharedPrefs;
public MyReceiver() {
}
@Override
public void onReceive(Context context, Intent intent) {
//Toast.makeText(context,"Changed",Toast.LENGTH_SHORT).show();
System.out.println("onReceive ");
if (intent.getAction().equals(Intent.ACTION_SCREEN_OFF)) {
screenOff = true;
} else if (intent.getAction().equals(Intent.ACTION_SCREEN_ON)) {
screenOff = false;
}
// The below if statement is my problem
if(sharedPrefs.getBoolValue(context,"hhmmkey")) {
Intent i = new Intent(context, TimePinService.class);
context.startService(i);
}
}
}
私は
すみません、エラーメッセージが表示されますか? ** context.startActivity(i); **への最後のコミットを変更した場合、ああ、私は今見ました、それはサービスです... – statosdotcom
いいえ、私はエラーメッセージが表示されません。そして、それはcontext.startService(i)であるはずです。 –
あなたのshureは条件が満たされていますか?そこにトーストトーストを入れて確認してください。 – statosdotcom