마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

버튼을 눌렀을때 특정 파일을 열게하거나 인터넷 창을 열게 하고 싶습니다.

0 추천
고수님들 안녕하세요.

다름이 아니라 앱 안에서 특정 버튼을 눌렀을때 원하는 파일을 열게 한다거나 특정 인터넷 사이트가 연동되어 열리는 기능을 구현하고 싶습니다.

예를 들면 "1" 이라는 버튼을 눌렀을때 www.naver.com 이란 인터넷이 열리게 하고

"2"라는 버튼을 눌렀을때 123이라는 한글 파일이 열리게 하고 싶습니다.

해당 기능을 구현하려면 어떻게 하여야 하는지 고수님들의 도움절실하여 이렇게 부탁드립니다. 감사합니다.
체봉 (250 포인트) 님이 2021년 5월 10일 질문

1개의 답변

0 추천
 
채택된 답변

Intent를 사용하세요.

https://developer.android.com/reference/android/content/Intent

아래는 웹브라우져를 통해 특정 URL을 오픈하는 코드입니다.

public void onBrowseClick(View v) {
    String naver = "http://www.naver.com";
    Uri uri = Uri.parse(url);
    Intent intent = new Intent(Intent.ACTION_VIEW, naver);
    // Verify that the intent will resolve to an activity
    if (intent.resolveActivity(getPackageManager()) != null) {
        startActivity(intent);
    } 
}

 Intent는 번역하면 '의도'정도가 될텐데요, 쉽게 말하면 다른 앱들이나 앱 안에서 내가 원하는 동작이 뭔지를 지정해 주는 겁니다. 따라서 전달하는 데이터에 따라 아주 다양한 동작을 할 수 있도록 되어 있습니다. 그리고 예를 들어 위처럼 내 앱에 ACTION_VIEW라는 것을  AndroidMainfest.xml에 정의해 두면 다른 앱으로부터 ACTION_VIEW라는 요청이 올 때 해당 처리를 할 수가 있습니다. 여러가지 앱들이 같은 액션을 지원한다면 chooser라는 것을 통해서 사용자가 원하는 앱을 선택하도록 한는 다이얼로그가 오픈되게 됩니다.

spark (227,470 포인트) 님이 2021년 5월 11일 답변
체봉님이 2021년 5월 11일 채택됨
...