public class MainActivity extends FragmentActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED
| WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD);
}
@Override
public void onBackPressed() { //뒤로가기
//super.onBackPressed();
}
@Override
public void onUserLeaveHint(){
Toast.makeText(this,"홈버튼",Toast.LENGTH_SHORT).show();
finish();
Intent i = new Intent(this, MainActivity.class);
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(i);
super.onUserLeaveHint();
}
}
MainActivity 클래스입니다. 여기서는 오류가 안납니다.
public class ScreenReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
if(intent.getAction().equals(Intent.ACTION_SCREEN_OFF)){
Intent i = new Intent(context, MainActivity.class);
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(i);
}
}
} ScreenReceiver 클래스입니다. 여기서는 오류는 안납니다.
public class ScreenService extends Service {
private ScreenReceiver mReceiver = null;
@Nullable
@Override
public IBinder onBind(Intent intent) {
return null;
}
@Override
public void onCreate(){
super.onCreate();
mReceiver = new ScreenReceiver();
IntentFilter filter = new IntentFilter(Intent.ACTION_SCREEN_OFF);
registerReceiver(mReceiver, filter);
}
@Override
public int onStartCommand(Intent intent, int flags, int startId){
super.onStartCommand(intent, flags, startId);
if(intent != null){
if(intent.getAction()==null){
if(mReceiver==null){
mReceiver = new ScreenReceiver();
IntentFilter filter = new IntentFilter(Intent.ACTION_SCREEN_OFF);
registerReceiver(mReceiver, filter);
}
}
}
return START_REDELIVER_INTENT;
}
@Override
public void onDestroy() {
super.onDestroy();
if (mReceiver != null) {
unregisterReceiver(mReceiver);
}
}
}
ScreenService 클래스입니다. 여기서는 오류는 안납니다.
package com.example.sw.myapplication1;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
/**
* Created by 창우 on 2016-03-31.
*/
public class ConfigActivity extends Activity{
private Button onBtn, offBtn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
onBtn= (Button)findViewById(R.id.btn1);
offBtn= (Button)findViewById(R.id.btn2);
onBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(this, ScreenService.class);
startService(intent);
}
});
offBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(this, ScreenService.class);
stopService(intent);
}
});
}
}
문제가 되는 ConfigActivity 클래스인데요 여기서 각 버튼에 대한 처리부분에서 Intent intent = new Intent ~~ 이부분이 오류가 납니다.