안드로이드 스튜디오 이미지 버튼으로 다른 앱 실행시키기
- Android Studio
- 2019. 12. 17.
안녕하세요 오늘은 이미지 버튼을 이용해서 버튼 클릭 시
타 앱이 실행되도록 해보겠습니다.
간혹 어플을 보면 링크도 있지만 다른앱으로 연결해서 실행시키는 기능이 있습니다
예를 들면 해당앱에서 버튼을 누르면
ex)인스타,트위터가 켜지도록 하는 기능이 있습니다.
구현해보겠습니다.
일단 레이아웃을 꾸며줍니다. 레이아웃은 개발하시는 분 성향에 따라 다르니
원하시는 레이아웃을 잘 꾸며주시면 됩니다.
저는 디자인 감각이 없어서 그냥 기능만 잘 구현
하도록 대충? 꾸미겠습니다.
밑에는 제 레이아웃입니다. 기능 구현이기 때문에 UI가 너무 허접한 점 죄송합니다..
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:background="#000">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="아이콘누르면 해당앱켜지기"
android:textColor="#fff"
android:textSize="35dp" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="인스타 아이콘"
android:textSize="20dp"
android:layout_gravity="center"/>
<ImageButton
android:id="@+id/instaicon"
android:layout_width="100dp"
android:layout_height="100dp"
android:layout_marginLeft="30dp"
android:layout_marginTop="25dp"
android:background="@mipmap/instaicon" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="트위터 아이콘"
android:textSize="20dp"
android:layout_gravity="center"/>
<ImageButton
android:id="@+id/witterbtn"
android:layout_width="100dp"
android:layout_height="100dp"
android:layout_marginLeft="30dp"
android:layout_marginTop="30dp"
android:background="@mipmap/twittericon" />
</LinearLayout>
</LinearLayout>
위에 레이아웃처럼 코딩하시면 밑에처럼 나오실겁니다.
이미지 버튼이기 때문에 이미지를 준비해두세요!
이제 아이콘 두 개를 만들었으니 각각 누를 때 그 앱이 실행이 되도록 코딩하겠습니다.
public class MainActivity extends AppCompatActivity {
private Intent intent;
private Intent intent1;
private final String packageName = "com.twitter.android";
private final String packageNames = "com.instagram.android";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
intent1 = this.getPackageManager().getLaunchIntentForPackage(packageName);
ImageButton imageButtonss = (ImageButton) findViewById(R.id.witterbtn);
imageButtonss.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
MainActivity.this.startActivity(intent1);
}
});
intent = this.getPackageManager().getLaunchIntentForPackage(packageNames);
ImageButton imageButtons = (ImageButton) findViewById(R.id.instaicon);
imageButtons.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
MainActivity.this.startActivity(intent);
}
});
}
}
정말 간단하게 코딩을 하여 구현할 수 있습니다.
위에 설정으로 패키 지명을 입력하여 실행하도록 설정했습니다.
패키지명이 바뀌면 안 됩니다.
(각 앱에는 패키 지명이 존재 합니다.)
수고하셨습니다.
'Android Studio' 카테고리의 다른 글
안드로이드 스튜디오 텍스트 클릭 시 이메일 보내기 (Intent / email) (0) | 2019.12.18 |
---|---|
안드로이드 스튜디오 버튼 클릭 시 화면 전환하기 (Intent) (14) | 2019.12.17 |
안드로이드 스튜디오 텍스트 뷰 에 링크를 넣어보자! (0) | 2019.12.17 |
안드로이드 스튜디오 핸드폰에 내장된 갤러리로 이동하기 (0) | 2019.12.17 |
안드로이드 스튜디오 터치 이벤트 (touch event) (0) | 2019.12.11 |