앱에서 환경설정 페이지로 이동하는 것을 하고 있습니다.
Intent intent1 = new Intent();
intent1.setClassName("com.android.settings", "com.android.settings.WirelessSettings");
startActivity(intent1);
위와 같은 식으로 해서 [무선 및 네트워크] 페이지로 이동하는 것을 확인하였습니다.
그런데 ICS 단말기에서는 NotFoundException 뜨면서 죽어버리는 것입니다..
해결책을 찾다가 ...
Intent intent1 = new Intent(android.provider.Settings.ACTION_WIRELESS_SETTINGS);
startActivity(intent1);
이런식으로 바꿔주니까 되는 것을 확인하였습니다.
위 두가지의 차이점을 알고 싶습니다.
간단하게라도 설명 좀 해주시면 감사하겠습니다!
전자는 패키지 네임하고 액티비티 클레스 네임으로 정의해서 들어가는거고
후자는 안드로이드 내에서 ACTION_WIRELESS_SETTINGS을 담당하는 걸로 들어거 같네요
제 짧은 지식으로는 그런거 같아요
아샌에서는 클레스 네임 바뀐듯?
명시적인 Intent 암시적인 Intent의 차이 입니다.
정확이 어떤 액티비티를 시작해라 라고 하는것과
무선 설정이 있는 액티비티를 시작해라 라고 하는것의 차이죠
후자의 경우 예를 들어보면
가끔 그림을 열 때 마켓에서 다른 개발자가 만든 이미지뷰어등을 설치 하셨다면 앱을 선택할 수 있는 대화상자가 뜨는걸 보셨을겁니다.
이것은 보통
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setType("image/*");
intent.setDate(uri);
startActivity(intent);
위와 유사한 코드로 구성되 있습니다.




오.. 감사합니다.
덕분에 좋은걸 알았습니다.