2013-05-02 4 views
0

브라우저가 URL "blargh : // yolo"에 도달 할 때 시작하려고하는 테스트 Android 앱을 만들었습니다. 그러나 그것은 작동하지 않습니다. 대신 브라우저는 Google 검색을 수행합니다.URL에서 실행 의도가 작동하지 않습니다.

Eclipse/ADT에서 만든 새로운 프로젝트입니다.

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.example.testurlscheming" 
    android:versionCode="1" 
    android:versionName="1.0" > 

    <uses-permission android:name="android.permission.INTERNET"/> 

    <uses-sdk 
     android:minSdkVersion="8" 
     android:targetSdkVersion="17" /> 

    <application 
     android:allowBackup="true" 
     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" 
     android:theme="@style/AppTheme" > 
     <activity 
      android:name="com.example.testurlscheming.MainActivity" 
      android:label="@string/app_name" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 

      <intent-filter> 
       <action android:name="android.intent.action.VIEW" /> 
       <category android:name="android.intent.category.DEFAULT" /> 
       <category android:name="android.intent.category.BROWSABLE" /> 
       <data android:scheme="blargh" /> 
      </intent-filter> 

     </activity> 
    </application> 

+1

어떻게 테스트하나요? 검색 주소창에 'blargh : // yolo'을 입력하면 이는 유효한 테스트가 아닙니다. 'blargh : // yolo'에 링크 된 웹 페이지의 링크를 클릭하면 * 유효한 테스트가됩니다. – CommonsWare

+0

당신은 또한 당신의 URL "template"과 비슷한 것을 가지고 있지 않으므로 이런 식으로 모든 URL을 포착 할 것입니다. –

+0

@CommonsWare는 타이핑을해서 테스트를하고 있었고, 링크를 시도해보고 다시 시도 할 것입니다. – AlcubierreDrive

답변

1

일부 웹 브라우저의 AOSP 브라우저 응용 프로그램처럼, 그것은 하이퍼 링크를보다 다른 주소 표시 줄을 치료 : 내가 편집 한 유일한 것은 다음과 같습니다 매니페스트입니다. 하이퍼 링크는 누가 해당 URL에 대해 ACTION_VIEW을 처리 하는지를 확인합니다. 검색 주소창은 브라우저 앱과 관련된 것으로 가정합니다. 인식하지 못하면 blargh yolo을 입력 한 것처럼 검색을 수행합니다.

리디렉션에서 작동하는지 알고 계십니까?

나는 희망한다. 그러나 이는 브라우저에 따라 다를 수 있습니다. 브라우저 제조업체가 브라우저 (그리고 시간이 지남에 따라 Chrome)를 따라 가기를 바랍니다.하지만 이는 보장되지 않습니다.

+0

향후 독자를위한 노트 : 브라우저가 인 텐트를 시작하기 전에 구성표를 소문자로 처리하기 때문에 체계가 매니페스트에 모두 소문자로 나열되어야합니다. 이것은 지금 막 끝내기를 좌절 시켰습니다. – AlcubierreDrive

관련 문제