2014-02-26 2 views
0

다음은 Google paly에서 앱을 여는 데 사용한 코드입니다.사용자가 텍스트 뷰에 제공된 하이퍼 링크를 클릭하면 Google Play에서 앱을 엽니 다.

final String appPackageName = getPackageName(); // getPackageName() from Context or Activity object 
    try { 
     startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=" + appPackageName))); 
    } catch (Exception e) { 
     Log.d(tag,"Message ="+e); 

     startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("http://play.google.com/store/apps/details?id=" + appPackageName))); 
    } 

나는 내가 구글 창백한에 하이퍼 링크에 때 사용자가 클릭을 응용 프로그램을 열 수 textview.how의 텍스트의 마지막에 하이퍼 링크를 제공하고 있습니다. 이미 성공적으로 텍스트 뷰가 하이퍼 링크를 표시이 경우에만 작동

tv.setOnClickListener(new View.OnClickListener() { 
    @Override 
    public void onClick(View v) 
    { 
     TextView tv = (TextView)v; 
     if(! (tv.getSelectionStart()==-1 && tv.getSelectionEnd()==-1)) 
      // Fired only when you touch the part of the text that is hyperlinked 
      // do something 
    } 

참고 :

+0

당신은 버튼을 사용할 수 있습니다에 OnClickListener 추가 XML에 아래의 코드를 사용합니다. 단추의 onlick 청취자에게 위의 코드를 설정하십시오. –

+0

안녕하세요 ashish 주어진 답변을 살펴 보시기 바랍니다, 당신에게 도움이됩니까 ?? –

답변

0

나는이 코드를 사용하여 ... 나는 동일한 기능을 수행 할 응용 프로그램을 가지고있다. 또한 하이퍼 링크는 TextView에 의해 자동으로 해결되므로 일반적으로 코드가 필요하지 않지만이 코드를 사용하면 추가 처리를 수행 할 수 있습니다.

1

<TextView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="<market_url>" 
    android:id="@+id/openPlaystore" 
    android:autoLink="all" 
    android:linksClickable="true"> 
</TextView> 

또는

는 텍스트 뷰

TextView tv = (TextView)findViewById(R.id.openPlaystore); 
tv.setOnClickListener(new OnClickListener() { 

      @Override 
      public void onClick(View v) { 
       final String appPackageName = getPackageName(); // getPackageName() from Context or Activity object 
       try { 
        startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=" + appPackageName))); 
       } catch (Exception e) { 
        Log.d(tag,"Message ="+e); 

        startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("http://play.google.com/store/apps/details?id=" + appPackageName))); 
       } 
      } 
     }); 
관련 문제