Проблемы с ACTION_TIME_TICK в Android - PullRequest
0 голосов
/ 28 декабря 2011

Мой телефон не вибрирует каждую минуту.Вот мой код:

import android.app.Service;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.os.IBinder;
import android.os.Vibrator;

public class vibrateNow extends Service {
static IntentFilter s_intentFilter;
static {
    s_intentFilter = new IntentFilter();
    s_intentFilter.addAction(Intent.ACTION_TIME_TICK);
}
BroadcastReceiver yourReceiver;

public void onCreate() {
    super.onCreate();

    this.yourReceiver = new BroadcastReceiver(){
        @Override
        public void onReceive(Context context, Intent intent) {
            showSuccessfulBroadcast();
        }
    };
    // Registers the receiver so that your service will listen for broadcasts
    vibrateNow.this.registerReceiver(vibrateNow.this.yourReceiver, s_intentFilter);
}

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

private void showSuccessfulBroadcast() {
    Vibrator v = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);

    // Vibrate for 300 milliseconds
    v.vibrate(300);

}
}

Кстати, кстати: я зарегистрировал в Android Manifest разрешение android.permission.VIBRATE.

1 Ответ

1 голос
/ 28 декабря 2011

Возможно, у вас есть разрешение не в том месте.

Или, возможно, вы не запускаете службу.

Или вы запускаете службу, но останавливаете ее, и Androidизбавляется от пустого процесса до наступления следующего тика.

Или вы тестируете на эмуляторе, у которого нет вибромотора.

Или вы тестируете на устройствеу которого нет вибромотора.

Могут быть и другие проблемы, но они должны помочь вам начать работу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...