这是我用来为我的小部件设置警报的代码:
private static void setAlarm(Context context) {
Intent myIntent = new Intent(context, Widget.class);
myIntent.setAction(AUTO_UPDATE);
PendingIntent pendingIntent =
PendingIntent.getBroadcast(context, 0, myIntent, PendingIntent.FLAG_UPDATE_CURRENT);
AlarmManager alarmManager = (AlarmManager) context.getSystemService(Service.ALARM_SERVICE);
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(System.currentTimeMillis());
calendar.add(Calendar.SECOND, 8);
alarmManager.setInexactRepeating(AlarmManager.RTC, calendar.getTimeInMillis(), 8000,
pendingIntent);
}
Run Code Online (Sandbox Code Playgroud)
但问题是即使在睡眠模式下,onReceive()仍然会被意图触发.
虽然使用后setInexactRepeating代替setRepeating,调用之间的延迟时间也会上升到在睡眠模式下1分,但是这仍然是电池消耗.
我有long[]它的价值观.我需要的是有一个排序数组,其中包含我的第一个数组的索引.
例如:
INPUT:
long[ ] values = {1 , 3 , 2 , 5 , 4};
Run Code Online (Sandbox Code Playgroud)
OUTPUT:
long[ ] SortIndex = {0 , 2 , 1 , 4 , 3}
Run Code Online (Sandbox Code Playgroud)
意思是:
values[0] < values[2] < values[1] < values[4] < values[3]
Run Code Online (Sandbox Code Playgroud)
......降序或升序SortIndex并不重要.
我想要一个可以完全工作而不是控制台的JTextArea 但我不知道该怎么做!
谢谢