Develop
2016.11.15 14:38
[android] How can I place app icon on launcher home screen?
조회 수 6579 댓글 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,
- 안드로이드,
- 바탕화면,
- 단축키,
| 번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 수 |
|---|---|---|---|---|---|
| 1117 | Develop |
[api] 인스타그램 API Access_Token 발급 방법 (Instagram API)
3 |
hooni | 2018.04.05 | 11327 |
| 1116 | Develop |
[api] 인스타그램에서 최신 이미지 가져오기 (Using Instagram API)
20 |
hooni | 2018.04.05 | 16228 |
| 1115 | Develop | [js] Click button copy to clipboard | hooni | 2018.04.05 | 4732 |
| 1114 | Develop | [php] Laravel 4. twitter bootstrap 적용하기 | hooni | 2018.04.05 | 5117 |
| 1113 | System/OS | How to Setup an Email Server on CentOS 7 | hooni | 2018.04.05 | 6086 |
| 1112 | Develop | How to Test SMTP AUTH using Telnet | hooni | 2018.04.05 | 6889 |
| 1111 | Develop |
[python] DJI Tello 드론 코딩 (프로그래밍)
58 |
hooni | 2018.03.04 | 33105 |
| 1110 | System/OS |
[mac] 맥에서 기본 실행 앱 변경하기
|
hooni | 2018.03.02 | 4141 |
| 1109 | System/OS | 콘솔에서 패스워드 걸린 zip 압축하는 명령 | hooni | 2018.03.02 | 4422 |
| 1108 | Develop | What is difference between Get, Post, Put and Delete? | hooni | 2018.02.28 | 5593 |
| 1107 | Develop | [php] Laravel Route에서 PC/Mobile 분기 | hooni | 2018.01.24 | 4915 |
| 1106 | Develop | Laravel 5 Failed opening required bootstrap/../vendor/autoload.php | hooni | 2018.01.24 | 6547 |