我是Android app开发的新手......
我正在尝试创建一个应用程序,当SCREEN关闭时运行代码的一部分并运行代码的其他部分当SCREEN为ON时......当我检查我的活动中的复选框时,这些事情应该发生... < / p>
目前我在“ACTIVITY.java”文件中使用以下代码,但它无法正常工作..
任何建议?请帮忙......
public class MainActivity extends ActionBarActivity {
CheckBox checkBox = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
checkBox = (CheckBox) findViewById(R.id.my_check_box);
boolean isChecked = getBooleanFromPreferences("isChecked");
Log.i("start",""+isChecked);
checkBox.setChecked(isChecked);
checkBox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
Log.i("boolean",""+isChecked);
MainActivity.this.putBooleanInPreferences(isChecked,"isChecked");
if(isChecked){
final PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
if( pm.isScreenOn())
{
//some code
}
else{
//some code
}
}
}
}
}
});
}
public void putBooleanInPreferences(boolean isChecked,String key){
SharedPreferences sharedPreferences = this.getPreferences(Activity.MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putBoolean(key, isChecked);
editor.commit();
}
public boolean getBooleanFromPreferences(String key){
SharedPreferences sharedPreferences = this.getPreferences(Activity.MODE_PRIVATE);
Boolean isChecked = sharedPreferences.getBoolean(key, false);
return isChecked;
}
}
答案 0 :(得分:0)
你可以使用android服务进行后台任务。