티스토리 뷰
어플 ShoutCut을 만들수가 있다.
구성은 간단하며, 예제는 지정하는 패키지를 따로 지정해서 만들수 있는 방법으로 한다.
package com.example.shortcut; import android.app.Activity; import android.content.Intent; import android.content.pm.PackageInfo; import android.content.pm.PackageManager.NameNotFoundException; import android.graphics.drawable.BitmapDrawable; import android.os.Bundle; import android.widget.Toast; public class MainActivity extends Activity { private static final String PACKAGE = "com.kakao.talk"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); PackageInfo packageInfo = null; try { packageInfo = getPackageManager().getPackageInfo(PACKAGE, 0); } catch(NameNotFoundException e) { Toast.makeText(getApplicationContext(), "Package Name Not Found", Toast.LENGTH_SHORT).show(); return; } final CharSequence name = packageInfo.applicationInfo.loadLabel(getPackageManager()); final BitmapDrawable icon = (BitmapDrawable)packageInfo.applicationInfo.loadIcon(getPackageManager()); Intent packageIntent = getPackageManager().getLaunchIntentForPackage(PACKAGE); Intent shortCutIntent = new Intent(packageIntent); shortCutIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED); Intent sendIntent = new Intent(); sendIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortCutIntent); sendIntent.putExtra(Intent.EXTRA_SHORTCUT_NAME, name); sendIntent.putExtra(Intent.EXTRA_SHORTCUT_ICON, icon.getBitmap()); sendIntent.putExtra("duplicate", false); sendIntent.setAction("com.android.launcher.action.INSTALL_SHORTCUT"); sendBroadcast(sendIntent); } }
위의 사용중에 getLaunchIntentForPackage 메소드는 카데고리가 LAUNCHER인것을 사용하면 되겠다.
이렇게 작성을 하면 되며, manifest파일에 다음의 퍼미션을 추가하여 준다.
<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT"/>
만약 동작을 하지 않는다면, 런처가 기본을 따르지 않아서 뜨지 않는 것이므로,
기타 설명은 하지 않도록 한다.
'Mobile > Android' 카테고리의 다른 글
설치된 어플 목록 가져오기 (0) | 2014.08.08 |
---|---|
PackageName으로 어플구동 (0) | 2014.08.08 |
DrawerLayout (0) | 2014.08.06 |
SlingPaneLayout (0) | 2014.08.06 |
ActionBar에 overflow menu 보여주기 (0) | 2014.08.06 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- ios
- php
- cocoapods
- Xcode
- Java
- Gradle
- android
- Windows
- Linux
- CentOS
- MySQL
- rxswift
- nodejs
- war
- golang
- SWIFT
- windows10
- github
- Python
- Spring
- go
- centos8
- ubuntu
- Kotlin
- enum
- tomcat
- intellij
- Codable
- docker
- git
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함