优化代码,以及打开usb后等待2s

serial
BlueMatthew 1 year ago
parent 8ff0e3c272
commit fb10b32cf1

@ -229,7 +229,7 @@ public class MainActivity extends AppCompatActivity {
binding.logs.setText("");
MicroPhotoContext.AppConfig curAppConfig = retrieveAndSaveAppConfig();
startMicroPhotoService(MainActivity.this, appConfig, mMessenger);
startMicroPhotoService(MainActivity.this.getApplicationContext(), appConfig, mMessenger);
binding.btnStartServ.setEnabled(false);
binding.btnStopServ.setEnabled(true);
@ -441,7 +441,7 @@ public class MainActivity extends AppCompatActivity {
binding.btnRestartApp.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Context context = v.getContext();
Context context = v.getContext().getApplicationContext();
MicroPhotoService.restartApp(context, context.getPackageName());
}
});
@ -476,22 +476,24 @@ public class MainActivity extends AppCompatActivity {
public void onClick(View view) {
SysApi.setOtgState(true);
try {
Thread.sleep(100);
} catch (Exception e) {
}
SysApi.setOtgState(true);
// SysApi.setOtgState(true);
SysApi.setCam3V3Enable(true);
String cameraInfo = CameraUtils.getAllCameraInfo(view.getContext());
Runnable runnable = new Runnable() {
@Override
public void run() {
String cameraInfo = CameraUtils.getAllCameraInfo(view.getContext());
Log.d(TAG, cameraInfo);
Log.d(TAG, cameraInfo);
SysApi.setCam3V3Enable(false);
SysApi.setOtgState(false);
SysApi.setCam3V3Enable(false);
SysApi.setOtgState(false);
Toast.makeText(view.getContext(), cameraInfo, Toast.LENGTH_LONG).show();
}
};
Toast.makeText(view.getContext(), cameraInfo, Toast.LENGTH_LONG).show();
mHandler.postDelayed(runnable, 1500);
}
});
@ -522,7 +524,7 @@ public class MainActivity extends AppCompatActivity {
}
private void takePhoto(int channel, int preset, boolean photoOrVideo) {
MicroPhotoService.takePhoto(this, channel, preset, photoOrVideo);
MicroPhotoService.takePhoto(this.getApplicationContext(), channel, preset, photoOrVideo);
}
@Override

@ -183,10 +183,10 @@ public class MicroPhotoService extends Service {
filter.addAction(WifiManager.WIFI_STATE_CHANGED_ACTION);
filter.addAction(WifiManager.NETWORK_STATE_CHANGED_ACTION);
filter.addAction(ConnectivityManager.CONNECTIVITY_ACTION);
registerReceiver(mNetworkChangedReceiver, filter);
getApplicationContext().registerReceiver(mNetworkChangedReceiver, filter);
}
AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);
AlarmManager alarmManager = (AlarmManager) getApplicationContext().getSystemService(ALARM_SERVICE);
while (true) {
AlarmManager.AlarmClockInfo aci = alarmManager.getNextAlarmClock();
@ -222,8 +222,8 @@ public class MicroPhotoService extends Service {
}
getApplicationContext().unregisterReceiver(mAlarmReceiver);
unregisterReceiver(mScreenaAtionReceiver);
unregisterReceiver(mNetworkChangedReceiver);
getApplicationContext().unregisterReceiver(mScreenaAtionReceiver);
getApplicationContext().unregisterReceiver(mNetworkChangedReceiver);
for(Map.Entry<String, PowerManager.WakeLock> entry : mWakeLocks.entrySet()) {
try {
@ -425,7 +425,7 @@ public class MicroPhotoService extends Service {
for (int idx = 0; idx < cnt; idx++) {
long val = schedules.get(idx).longValue();
alarmIntent.putExtra(EXTRA_PARAM_SCHEDULE + idx, schedules.get(idx).longValue());
channelStr += "CH=" + ((val & 0XFF0000) >> 16) + "-PR=" + ((val & 0XFF00) >> 8) + " ";
channelStr += "(" + ((val & 0XFF0000) >> 16) + "-" + Long.toString (((val & 0XFF00) >> 8), 16).toUpperCase() + ") ";
}
alarmIntent.putExtra(EXTRA_PARAM_TIME, scheduleTime);
@ -443,7 +443,7 @@ public class MicroPhotoService extends Service {
long currentTimeMillis = System.currentTimeMillis();
Date date = new Date(currentTimeMillis + timeout);
String dateStr = (String) DateFormat.format("MM-dd kk:mm:ss", date);
Log.d(TAG, "PhotoTimer Reg: " + dateStr + " currentTimeMillis=" + currentTimeMillis + " timeout=" + timeout + " Channels=" + channelStr);
Log.d(TAG, "PhotoTimer Reg: " + dateStr + " currentTimeMillis=" + currentTimeMillis + " timeout=" + timeout + " CH-PR=" + channelStr);
alarmManager.setExactAndAllowWhileIdle(AlarmManager.RTC_WAKEUP, System.currentTimeMillis() + timeout, pendingIntent);
}
@ -558,16 +558,19 @@ public class MicroPhotoService extends Service {
// if(Build.VERSION.SDK_INT >= 26) {
// alarmIntent.addFlags(0x01000000);
//}
alarmIntent.setPackage(context.getPackageName());
alarmIntent.setComponent(new ComponentName(context.getPackageName(),AlarmReceiver.class.getName()));
// alarmIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
// alarmIntent.setPackage(context.getPackageName());
alarmIntent.setAction(ACTION_HEARTBEAT_MANUALLY);
PendingIntent pendingIntent = PendingIntent.getBroadcast(context, 0, alarmIntent, 0);
// PendingIntent pendingIntent = PendingIntent.getBroadcast(context, 0, alarmIntent, 0);
context.sendBroadcast(alarmIntent);
// context.sendBroadcast(alarmIntent);
// LocalBroadcastManager localBroadcastManager = LocalBroadcastManager.getInstance(context);
// localBroadcastManager.sendBroadcast(alarmIntent);
AlarmManager alarmManager = (AlarmManager) context.getSystemService(ALARM_SERVICE);
alarmManager.setExactAndAllowWhileIdle(AlarmManager.ELAPSED_REALTIME_WAKEUP, SystemClock.elapsedRealtime() + 100, pendingIntent);
// AlarmManager alarmManager = (AlarmManager) context.getSystemService(ALARM_SERVICE);
// alarmManager.setExactAndAllowWhileIdle(AlarmManager.ELAPSED_REALTIME_WAKEUP, SystemClock.elapsedRealtime() + 100, pendingIntent);
}
@Override
@ -587,7 +590,7 @@ public class MicroPhotoService extends Service {
connect();
registerReceiver(mScreenaAtionReceiver, mScreenaAtionReceiver.getFilter());
getApplicationContext().registerReceiver(mScreenaAtionReceiver, mScreenaAtionReceiver.getFilter());
if (intent.hasExtra("messenger")) {
mMessenger = intent.getParcelableExtra("messenger");
}
@ -643,7 +646,7 @@ public class MicroPhotoService extends Service {
break;
case ACTION_STOP:
try {
unregisterReceiver(mScreenaAtionReceiver);
getApplicationContext().unregisterReceiver(mScreenaAtionReceiver);
} catch (Exception ex) {
}
@ -721,9 +724,9 @@ public class MicroPhotoService extends Service {
alarmIntent.setPackage(context.getPackageName());
alarmIntent.setAction(ACTION_STOP);
PendingIntent pendingIntent = PendingIntent.getBroadcast(context, 0, alarmIntent, 0);
PendingIntent pendingIntent = PendingIntent.getBroadcast(context.getApplicationContext(), 0, alarmIntent, 0);
AlarmManager alarmManager = (AlarmManager) context.getSystemService(ALARM_SERVICE);
AlarmManager alarmManager = (AlarmManager) context.getApplicationContext().getSystemService(ALARM_SERVICE);
alarmManager.setExactAndAllowWhileIdle(AlarmManager.ELAPSED_REALTIME_WAKEUP, SystemClock.elapsedRealtime() + 100, pendingIntent);
}
@ -739,7 +742,7 @@ public class MicroPhotoService extends Service {
mNativeHandle = 0;
try {
unregisterReceiver(mScreenaAtionReceiver);
getApplicationContext().unregisterReceiver(mScreenaAtionReceiver);
} catch (Exception ex) {
}

Loading…
Cancel
Save