Eclipse에서 실행되는 프로그램을 중지하는 방법은 무엇입니까?
실행중인 프로그램을 중지하는 옵션을 찾을 수 없습니다 (디버그 또는 릴리스 모드에 관계없이).
따라서 지금은 에뮬레이터를 닫는 것만으로 프로그램을 중지합니다 (Eclipse로 제어권 반환).
이 작업을 수행하는 더 좋은 방법이 있습니까? 에뮬레이터를 닫고 다시 시작할 필요가 없습니다.
에뮬레이터에서 앱을 중지하고 싶다고하셨습니다. 이를 위해 디버그 관점에서 장치 창을 열고 프로세스를 선택한 다음 동일한 창에서 중지 버튼을 누를 수 있습니다.
프로그램을 중지하기 위해 관점을 전환하는 것이 지루하다고 생각하는 사람들은 (예 : 내가했던 것처럼) 현재 관점에서 장치 창을
Windows > 보기 표시 > 기타 ... > Android > 장치
Android에서 프로그램은 일반적으로 finish () 경우에만 '중지'하거나 메모리가 필요할 때 시스템이이를 삭제합니다. 왜 멈추나요? 예를 들어, 수정 / 재설치 / 다시 테스트하기 위해 중지 할 필요가 없습니다.
"디버그"퍼스펙티브에서 "디버그"(활성 스레드 목록이있는 위치)에서 애플리케이션의 루트를 선택하고 중지 단추를 클릭하십시오.
나를 위해 일하고 있습니다.
Windows-> Open Perspective-> 기타 ...-> DDMS
- Android보기의 왼쪽 창에서 "장치"를 볼 수 있습니다. 현재 실행중인 응용 프로그램 목록이 있어야합니다 (에뮬레이터 또는 물리적 장치). 닫으려는 응용 프로그램을 클릭하십시오. 일반적으로 이름은 패키지 이름 + 애플리케이션 이름입니다.
- 이제 "중지"기호를 클릭하십시오.
일반보기로 돌아가려면 오른쪽 상단에있는 Java 버튼을 누르기 만하면됩니다. Windows-> Open Perspective-> 기타 ...-> Java를 눌러 수행 할 수도 있습니다.
이 답변은 Eclipse를 다루지 않지만 실행중인 Android 프로그램을 중지하기위한 Google 검색에서이 질문이 나오기 때문에 명령 줄 방법을 제공하고 싶습니다. 실행 adb shell
하고 죽이려는 프로세스의 PID를 찾으십시오. ps
예를 들어 광산은 다음과 같습니다.
u0_a46 2097 37 175520 19912 ffffffff 40037ebc S net.unternet.bleah.blarg
그러면 kill 2097
메인 화면이 다시 나타나는 것을 볼 수 있습니다.
중지하려는 코드에 중단 점을 추가 한 다음 F11을 눌러 디버그 모드에서 실행합니다.
그림 1-이 답변을 조사하는 동안 많은 좀비가 사망했습니다.
OS 수준에서 Android 애플리케이션 Java VM 프로세스를 종료하는 것은 권장되지 않습니다. 불행히도 이것은 System.exit () 및 쉘 "kill"명령과 마찬가지로 Eclipse 장치 창 "중지"가 수행하는 작업입니다.
이는 onStop (), onDestroy () 및 finalize ()와 같은 일반적인 앱 수명주기 메서드를 파괴합니다.
많은 앱은 정상적인 종료를 위해 이러한 방법을 필요로합니다 (예 : Sensor, MediaPlayer, Equalizer, Visualizer 등의 시스템 개체를 사용하는 경우).
이러한 시스템 개체는 이러한 수명주기 메서드 동안 release ()가 명시 적으로 호출되지 않으면 시스템 리소스에 대한 좀비 죽음의 그립과 함께 멈 춥니 다. 그림 참조. 위 1 개. 이렇게하면 앱이 다시 시작되지 않고 재부팅이 필요할 수도 있습니다. 그것은 비정상적인 측면입니다.
유일한 해결책은 onStop () 또는 onDestroy () 또는 적어도 finalize ()를 호출하여 항상 앱을 깨끗하게 종료하는 것입니다. 디버거는 종료시 OS와 마찬가지로이를 수행합니다.
명령 줄에서 정상 종료를 강제하기 위해 SIG_HUP 이벤트를 트랩하도록 앱을 설정할 수 있습니다.
앱 VM을 종료하는 유일한 시간은 ANR (이미 좀비) 상태입니다. ANR을 수정해야합니다. 이 상태에 들어갈 수있는 앱을 배포하지 마십시오. 매우 무례합니다.
Google 분석 및 Play 스토어를 사용하여 배포시이를 모니터링 할 수 있습니다. 좀비 응용 프로그램으로 인해 재부팅해야 한 후 화난 사용자가 단일 별 ANR 리뷰를 제공하는 것을 원하지 않습니다. 아주 나쁜.
Android는 Linux라는 점을 기억하세요. 실제 OS처럼 취급하고 앱 수명주기를 존중하지 않으면 두려운 Zombie Apocalypse에 직면하게됩니다.
PS : 좀비 비유가 마음에 들지 않는다면 판타지아는 어떻습니까?
그림 참조 : 1. DDMS를 클릭하십시오. 2. 현재 앱을 선택합니다. 3. "중지"를 클릭하십시오.
참고 URL : https://stackoverflow.com/questions/4972699/how-to-stop-a-program-running-under-eclipse
'IT박스' 카테고리의 다른 글
Android : 활동을 호출하는 활동에 결과를 반환하는 방법은 무엇입니까? (0) | 2020.08.07 |
---|---|
웹 참조와 서비스 참조 (0) | 2020.08.07 |
EndpointDispatcher 예외에서 ContractFilter 불일치 (0) | 2020.08.07 |
Python-write () 대 writelines () 및 연결된 문자열 (0) | 2020.08.07 |
JSON 객체에 새 배열 요소 추가 (0) | 2020.08.07 |