2015-08-15 103 views
0

我只想播放音樂一次,但每分鐘播放的代碼播放它我該怎麼辦?重複報警一次(報警管理器)

public class MainActivity extends AppCompatActivity { 
Button BT; 
PendingIntent pendingIntent; 
public void func() 
{ 
    AlarmManager alarmManager=(AlarmManager) getSystemService(Context.ALARM_SERVICE); 
    alarmManager.setInexactRepeating(AlarmManager.RTC_WAKEUP,System.currentTimeMillis(),1*60*1000,pendingIntent); 
} 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    Intent intent=new Intent(MainActivity.this,sv.class); 
    pendingIntent=PendingIntent.getBroadcast(MainActivity.this,0,intent,0); 
    BT=(Button) findViewById(R.id.button); 
    BT.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
     func(); 
     } 
    }); 
} 

回答

0

你有警報類型'setInexactRepeating' - 正如它暗示的那樣...重複。嘗試使用'set'代替。有更多的信息在這裏:http://developer.android.com/reference/android/app/AlarmManager.html

+0

不幸的是不工作...我想我的鬧鐘重複只有一次 –

+0

對不起誤解了你的問題,你實際上想要一個警報兩次,而不是一次我明白嗎?你可以在你用pendingIntents包裝的意圖中傳遞額外的內容,這樣你就可以增加一個int值,並且每次從報警onReceive中觸發你的pendingIntent,你可以檢查這個值是否在你的限制之內,如果是的話,設置另一個報警,如果沒有,取消鬧鐘。 –