android - HTC에서 자동 링크가 작동하지 않음-HtcLinkifyDispatcher

출처 android android-4.0-ice-cream-sandwich autolink commonsware

Android 앱의 android:autoLink에서 web로 설정된 TextView를 사용하여 클릭 가능한 링크를 활성화합니다. 하지만 ICS로 업그레이드 된 HTC Desire S에서 이것을 실행하면 링크 중 하나를 탭하면 다음 예외가 발생합니다.

android.content.ActivityNotFoundException: Unable to find explicit activity class 
  {com.htc.HtcLinkifyDispatcher/
  com.htc.HtcLinkifyDispatcher.HtcLinkifyDispatcherActivity}; 
  have you declared this activity in your AndroidManifest.xml?

    at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1634)
    at android.app.Instrumentation.execStartActivity(Instrumentation.java:1510)
    at android.app.Activity.startActivityFromChild(Activity.java:3519)
    at android.app.Activity.startActivityForResult(Activity.java:3271)
    at android.app.Activity.startActivity(Activity.java:3358)
    at woodsie.avalanche.info.InfoActivity.startActivity(InfoActivity.java:61)
    at android.text.style.LinkifyURLSpan.onClick(LinkifyURLSpan.java:73)


클래스가 내 빌드 경로에 없기 때문에 HtcLinkifyDispatcherActivity 등록을 시도하면 아무데도 얻지 못합니다.
이와 관련하여 내가 찾은 최고의 기사는 The Linkify Problem: The Detection and the Mitigation였습니다.

그러나 URLSpan 클래스를 가로 채서 대체하려고 시도하는 대신 TextView의 부모 활동에 대한 startActivity() 수준을 낮추고 덮어 썼습니다.

@Override
public void startActivity(Intent intent) {
    try {
        /* First attempt at fixing an HTC broken by evil Apple patents. */
        if (intent.getComponent() != null 
                && ".HtcLinkifyDispatcherActivity".equals(intent.getComponent().getShortClassName()))
            intent.setComponent(null);
        super.startActivity(intent);
    } catch (ActivityNotFoundException e) {
        /*
         * Probably an HTC broken by evil Apple patents. This is not perfect,
         * but better than crashing the whole application.
         */
        super.startActivity(Intent.createChooser(intent, null));
    }
}


해키하지만 간단하고 작동하는 것 같습니다.
관련 기사

android - 스 와이프시 뷰 페이저 뷰를 업데이트하는 방법-Android

android - 잠금시 가로 Android 애플리케이션 다시 시작 방지

android - 보류중인 요청이있는 세션에 대해 새 권한을 요청하려고했습니다.

android - Android : Ant 명령 줄 빌드 중에 버전 정보를 전달하는 방법은 무엇입니까?

java - ksoap2 SOAP를 통해 복잡한 객체 배열 수신

android - AndEngine AnimatedSprite가 표시되지 않음

android - SimpleAdapter에서 textview를 숨기는 방법

android - ListView 행보기에 CheckBox를 추가하면 행을 클릭 할 수 없습니다.

php - PHP 서버에서 Android 인앱 결제 서명 확인

android - Android Emulator에서 Google Map V2를 표시하는 방법은 무엇입니까?