2014-06-19 8 views
0

의도 필터를 구현하려하지만 (알 수없는 이유로) 성공할 수 있습니다.브라우저에서 기존 활동 또는 새 활동 열기

<activity 
    android:name="com.example.StartActivity" 
    android:label="@string/start_activity_title" 
    android:windowSoftInputMode="adjustPan" 
    android:exported="true"> 

    <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="myapp" 
      android:host="terms-signed.com" 
      android:pathPrefix="/?"/> 
    </intent-filter> 
</activity> 

브라우저는 내가 브라우저의 주소 필드에 경우 또는 같은 URI를 넣어 아무리 내가 비슷한에 탭 myapp://terms-signed.com/?documentKey=SOME-HEX

같은 URI를 열려고 :

나는 다음과 같은 방법으로 활동을 선언 HTML 페이지에서 링크를 누르면 아무 일도 일어나지 않습니다.

선택기가 표시되지 않습니다. 내 앱이 가장 중요하지 않습니다. 안드로이드가 실행되지 않는 경우 내 앱을 실행하지 않습니다. 아무것도. 브라우저에서만 주소의 웹 페이지가 일시적으로 다운 될 수 있다는 메시지가 표시됩니다.

Android 4.2.1/Galaxy Nexus를 사용하고 있습니다.

이 작업을 수행하기 위해 수행 할 수있는 작업은 무엇입니까?

답변

1

?을 pathPrefix에서 제거하면 경로의 일부가 아닙니다. 어쩌면 호스트 뒤에 경로가 없으므로 전체 pathPrefix 매개 변수를 제거 할 수도 있습니다.

편집 2 : 주석에서 볼 수 있듯이 하이픈과 .com을 호스트 선언에서 제거하면 문제가 해결됩니다. 최선의 추측은 사용자 지정 구성표를 사용하고 있는지 여부에 관계없이 브라우저가 .com 때문에 웹 URI로 URI를 처리한다는 것입니다.

+0

불행히도 도움이되지 않습니다. 나는'?'와'pathPrefix'를 제거하려고 시도했지만 아무것도 변경하지 않았습니다. – Bobrovsky

+0

내 대답에 몇 가지 추가 아이디어가 추가되었습니다. 아마도 도움이 될 것입니다. – tknell

+0

감사합니다.하지만이 방법은 효과가 없습니다. 나는 끔찍한 잘못을 저 지르게 될 것임에 틀림 없다. – Bobrovsky