package com.zql.android.led; import android.content.Context; import android.graphics.Color; import android.os.Build; import android.os.Handler; import android.os.PowerManager; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import com.thebluealliance.spectrum.SpectrumDialog; import com.zql.android.led.data.LEDEntity; import java.util.List; import java.util.concurrent.Executors; public class LEDActivity extends AppCompatActivity { private PowerManager.WakeLock mWakeLock; private Handler mHandler = new Handler(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); fetchLEDData(); PowerManager pm = (PowerManager)getSystemService( Context.POWER_SERVICE); mWakeLock = pm.newWakeLock(PowerManager.FULL_WAKE_LOCK, "led"); mWakeLock.acquire(); final View decorView = getWindow().getDecorView(); final int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_FULLSCREEN; decorView.setSystemUiVisibility(uiOptions); decorView.setOnSystemUiVisibilityChangeListener(new View.OnSystemUiVisibilityChangeListener() { @Override public void onSystemUiVisibilityChange(int i) { if ((i & View.SYSTEM_UI_FLAG_FULLSCREEN) == 0) { mHandler.postDelayed(new Runnable() { @Override public void run() { decorView.setSystemUiVisibility(uiOptions); } },1000); } else { } } }); } @Override protected void onDestroy() { super.onDestroy(); mWakeLock.release(); } private void fetchLEDData(){ Executors.newSingleThreadExecutor().execute(new Runnable() { @Override public void run() { LEDService.own().initFirstLED(); final List<LEDEntity> ledEntities = LEDService.own().getLEDData(); runOnUiThread(new Runnable() { @Override public void run() { LEDView ledView = (LEDView) findViewById(R.id.led_view); LEDEntity entity = ledEntities.get(0); ledView.setLED(entity.content,entity.textColor,entity.textSize,entity.ledSize); } }); } }); } }