2012-03-05 3 views
1

다양한 기능을 수행 할 수있는 응용 프로그램이 있습니다. 내 안드로이드 전화 홈 화면에서 가장 자주 사용되는 기능에 대한 바로 가기를 만들고 싶습니다.홈 화면에서 바로 가기 만들기

누구든지 코드를 사용하여 실제로 작동하는 방법을 알려주십시오. 바로 가기를 작성하는 방법은 무엇입니까? 나는 여러 줄의 코드를 보았지만 이해할 수는 없다. 설명해주세요.

다음 코드를 사용했습니다.> 주요 문제는 바로 가기가 홈 화면에 생성된다는 것입니다. 내가 처럼에 한는 토스트 표시 메시지를 클릭 때 "응용 프로그램이 휴대 전화에 설치되어 있지 않은".And은 로그인 오류 메시지는

1)/ActivityManager (58) WARN : 권한 거부 ​​: checkComponentPermission를() reqUid = 10046 2) WARN/ActivityManager (58) : 사용 권한 거부 : ProcessRecord에서 인 텐트 {act = android.intent.action.view flg = 0x10000000 cmp = aaa/.s bnds = [3,240] [77,319] 3) ERROR/Launcher (123) : 실행 프로그램에 의도를 시작할 수있는 권한이 없습니다. {act = android.intent.action {44f19b88 123 : com.android.launcher/10025} (pid = 123, uid = 10025)는 null이 필요합니다. 3) .view flg = 0x10000000 cmp = aaa/.s bnds = [3,240] [77,319]}. 해당 활동에 대한 MAIN 인 텐트 필터를 만들거나이 활동에 대해 내 보낸 속성을 사용해야합니다. 4) 오류/실행기 (123) : java = (3) 오류/실행 프로그램 (123) : java = {3,240} [77,319]} 4) 오류/실행 프로그램 .lang.SecurityException : Permission Denial : ProcessRecord {44f19b88 123 : com.android.launcher/fromroid.intent.action.view flg = 0x10000000 cmp = aaa/.s bnds = [3,240] [77,319] 10025} (PID = 123, UID = 10025) 우리는 단지 작업 com.android.launcher.action.INSTALL_SHORTCUT있는 간단한 의도를 해고 할 필요가 안드로이드 홈 화면에서 응용 프로그램 바로 가기를 만들려면 널


`package a.a.a; 

import android.app.Activity; 
    import android.content.Intent; 
    import android.os.Bundle; 

public class ShortActivity extends Activity { 
/** Called when the activity is first created. */ 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 
    Intent i=new Intent(this,s.class); 
    Intent j=new Intent(); 
    j.putExtra(Intent.EXTRA_SHORTCUT_INTENT, i); 
    j.putExtra(Intent.EXTRA_SHORTCUT_NAME,"Sukumar"); 
    j.putExtra(Intent.EXTRA_SHORTCUT_ICON,R.drawable.icon); 
    j.setAction("com.android.launcher.action.INSTALL_SHORTCUT"); 
    this.sendBroadcast(j); 


} 


}` 

답변

0

이 필요합니다. 바로 가기의 이름과 아이콘, 우리는 Intent의 exrta 매개 변수를 넣을 수 있습니다.
아래 방법을 확인하십시오.

Intent intent = new Intent(); 
intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, intentActivity); 
intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, textShortcut); 
Parcelable iconResource = (Parcelable) bitmap; 
intent.putExtra(Intent.EXTRA_SHORTCUT_ICON, iconResource); 
intent.putExtra("duplicate", duplicateNeed); // (duplicateNeed=false) 
// will not allow the 
// duplicate same name 
// shortcuts. 
intent.setAction(INSTALL_SHORTCUT_ACTION); 
getApplicationContext().sendBroadcast(intent);