2012-02-10 3 views
1

다른 활동이있는 애플리케이션이 있습니다. 이러한 활동 중 하나는 다른 응용 프로그램에서 호출 할 수 있습니다.Android는 사전 정의 된 활동/패키지에만 활동 통화 허용

특정 활동 (예 : com.other.application 및 com.different.application)에서만이 특정 활동을 호출 할 수있는 권한을 설정하는 방법이 있습니까? AndroidManifest.xml 또는 다른 곳에 허용 된 응용 프로그램을 구성 할 것입니다.

감사

+0

"하나의 정의 다른 응용 프로그램에서 호출 할 수 있습니다. " 그것은 당신이 할 수 있다고 선언 한 경우에만 가능합니다. 그래서 나는 그 질문을 정말로 이해하지 못합니다. 기본적으로 Manifest에 선언 된 활동은 암시 적 의도에 응답하지 않으므로 다른 앱에서 효과적으로 처리 할 수 ​​없습니다. – Matthias

+0

[link] (http://developer.android.com/reference/android/content/IntentFilter.html) –

답변

0

당신은 접근 여부 응용 프로그램 패키지의 외부에 의해로 활동을 선언하지만, 접근 일부 응용 프로그램 또는 일부하지 않는 것은 가능하지 않다 할 수 있습니다. exported=false;

+0

답장을 보내 주셔서 감사합니다. 평판이 없어서 투표 할 수 없습니다. 나는 끝냈습니다. 작은 트릭으로 위로 : '번들 extras = getIntent(). getExtras(); if (extras == null || extras.getString ("username") == null) { \t // 암호를 확인하십시오. \t this.finish(); \t return; } ' 응용 프로그램은 올바른 사용자 이름과 암호를 제공하면 활동을 열 수 있습니다. –

3

당신은 당신의 자신의 권한을 정의하고 해당 권한 액세스 기능을 요청하는 응용 프로그램을 허용 할 수 있습니다 :

는 매니페스트에 활동의 속성을 설정해야합니다 응용 프로그램에 대한 개인 활동을 확인하십시오.

권한에게 활동에 대한

<permission android:name="uk.co.packagename.mypermission"/> 

설정 권한 그 활동의

<activity android:permission="uk.co.packagename.mypermission" android:name=".ActivityName"/> 

사용 권한

<uses-permission android:name="uk.co.packagename.mypermission"/> 
관련 문제