저는 작업 스케줄러를 사용하고 있으며 다음 주 인터넷 연결이 시작될 때 서비스를 예약합니다. 따라서 앱이 처음 설치되면 레이아웃에는 단 하나의 버튼이 있습니다.이 버튼을 클릭하면 네트워크 종속 서비스를 예약 한 다음 작업이 완료되기를 원합니다. (레이아웃이 파괴되어 사용자가 화면을 가져옵니다. 앱이 설치되기 전에 가지고 있었기 때문에) 나는 그것에 대해 2 가지 질문을 가지고있다 :작업 스케줄러를 통해 서비스를 예약 한 후 작업을 마칩니 까?
1) 서비스를 예약 한 활동이 파괴되면 서비스가 여전히 예약되었거나 분실되었음을 의미합니까?
2) 서비스를 예약 한 후 onClick 이벤트의 끝에 finish()
메서드를 호출하면 작업이 완료되지 않고 대신 finish()
이 존재하지 않는 것처럼 동작하지 않습니다.
이 서비스가 파괴 일정 활동이 이 서비스가 아직 예정 또는 분실되는 것을 의미하는 것이 않는 경우에서 OnCreate 코드
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final Button button = (Button) findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
mJobScheduler = (JobScheduler) getSystemService(Context.JOB_SCHEDULER_SERVICE);
JobInfo.Builder builder = new JobInfo.Builder(1,
new ComponentName(getPackageName(),
JobSchedulerService.class.getName()));
builder.setPersisted(true);
builder.setRequiredNetworkType(JobInfo.NETWORK_TYPE_ANY);
mJobScheduler.schedule(builder.build());
}
});
}