Develop
2016.11.15 14:38
[android] How can I place app icon on launcher home screen?
조회 수 6637 댓글 0
홈화면에 아이콘 추가하기. ㅋㄷ
AndroidManifest.xml 파일에 권한 추가.
<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" />
실행화면에 코드 추가.
Intent shortcutIntent = new Intent();
shortcutIntent.setClassName("packageName", "className");
//shortcutIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
//shortcutIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
Intent addIntent = new Intent();
addIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);
addIntent.putExtra(Intent.EXTRA_SHORTCUT_NAME, "shortcut_name");
addIntent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE,
Intent.ShortcutIconResource.fromContext(context, R.drawable.icon));
//intent.putExtra("duplicate", false);
addIntent.setAction("com.android.launcher.action.INSTALL_SHORTCUT");
context.sendBroadcast(addIntent);## 좀 더 정리된 버전은..
Permissions:
<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" /> <uses-permission android:name="com.android.launcher.permission.UNINSTALL_SHORTCUT" />
BroadcastReceiver:
<receiver android:name="YOUR.PACKAGE.PackageReplacedReceiver">
<intent-filter>
<action android:name="android.intent.action.PACKAGE_REPLACED" />
<data android:scheme="package" android:path="YOUR.PACKAGE" />
</intent-filter>
</receiver>
Functions:
private void addShortcut() {
//Adding shortcut for MainActivity
//on Home screen
Intent shortcutIntent = new Intent(getApplicationContext(), SplashActivity.class);
shortcutIntent.setAction(Intent.ACTION_MAIN);
Intent addIntent = new Intent();
addIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);
addIntent.putExtra(Intent.EXTRA_SHORTCUT_NAME, getString(R.string.app_name));
addIntent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, Intent.ShortcutIconResource.fromContext(getApplicationContext(), R.mipmap.ic_launcher));
addIntent.setAction("com.android.launcher.action.INSTALL_SHORTCUT");
addIntent.putExtra("duplicate", false); //may it's already there so don't duplicate
getApplicationContext().sendBroadcast(addIntent);
}
public void removeShhortcut(){
Intent shortcutIntent = new Intent(getApplicationContext(), SplashActivity.class);
shortcutIntent.setAction(Intent.ACTION_MAIN);
Intent addIntent = new Intent();
addIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);
addIntent.putExtra(Intent.EXTRA_SHORTCUT_NAME, getString(R.string.app_name));
addIntent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, Intent.ShortcutIconResource.fromContext(getApplicationContext(), R.mipmap.ic_launcher));
addIntent.setAction("com.android.launcher.action.UNINSTALL_SHORTCUT");
addIntent.putExtra("duplicate", false); //may it's already there so don't duplicate
getApplicationContext().sendBroadcast(addIntent);
}TAG •
- Shortcut Icon,
- Android,
- 안드로이드,
- 바탕화면,
- 단축키,
| 번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 수 |
|---|---|---|---|---|---|
| 1069 | Develop | [ios] NSString, RegularExpression Find/Replace | hooni | 2017.04.14 | 7205 |
| 1068 | Develop |
[ios] 비디오,네트워크,소셜로그인 테스트
|
hooni | 2017.04.04 | 2500 |
| 1067 | Etc | 사이버보안실무 수업 메모 | hooni | 2017.03.30 | 3263 |
| 1066 | Database | [mysql] 쿼리 실행시 ERROR 1366 (HY000) : incorrect string value : for column 3 | hooni | 2017.03.30 | 16672 |
| 1065 | Develop |
[ios] Xcode에서 특정 파일만 ARC 따로 설정하는 방법
|
hooni | 2017.03.29 | 4491 |
| 1064 | Develop |
사이버보안실무 수업 메모
|
hooni | 2017.03.23 | 0 |
| 1063 | Develop |
Mac OS 에 Jenkins 설치하기 (Homebrew)
2 |
hooni | 2017.03.15 | 13564 |
| 1062 | Develop |
[ios] 동영상 플레이어 샘플 (for PIP Player)
|
hooni | 2017.03.15 | 13317 |
| 1061 | Etc |
종합시험 관련 자료
|
hooni | 2017.03.15 | 0 |
| 1060 | Develop |
[js] Javascript로 만든 포트리스 (2010)
5 |
hooni | 2017.03.03 | 5906 |
| 1059 | Develop |
[ios] Facebook Cache 갱신하는 함수
|
hooni | 2017.02.27 | 7406 |
| 1058 | Etc |
모바일 프로그래머가 갖추어야 할 필수 역량
|
hooni | 2017.02.16 | 6921 |