2014-10-10 4 views
1

안녕하세요. 도움을 드릴 수있는 사람이 누구입니까?Android - 앱이 설치되어 있지 않습니다.

나는 코스를 진행하고 있으며 Android 권한으로 테스트하고 있습니다. 현재 수행중인 작업은 2 가지 패키지 중 하나입니다. 다른 패키지를 호출 할 수있는 Calling Package 및 Called Package라고 부릅니다.

매우 간단한 파일을로드하는 매우 간단한 방법 인 호출 된 패키지에는 특별한 것이 없으므로 사용 권한의 모든 조정은 Manifest 파일 내에서 수행됩니다.

내 문제는 입니다. a) 내 전화 앱이 정상적으로 작동하는 것 같습니다. 즉, 호출 된 앱을 호출하고 모든 것이 제대로 작동하는 것 같습니다. LogCat에서보고 할 문제 없음 b) 그러나 에뮬레이터 또는 실제 장치에로드 된 응용 프로그램에서 직접 호출 된 응용 프로그램을 시작하려고하면 다시 "응용 프로그램이 설치되지 않았습니다"라는 메시지가 나타납니다. LogCat에 아무 것도 나타나지 않습니다.

그래서 호출 된 응용 프로그램에 대한 매니페스트 파일을 포함하고 있으며 제공된 코드에서 내 코드가 파손되는 곳을 // TODO 섹션으로 구분합니다. 관심을

내 덕분에, 여기에 버그가 있어야합니다 어디에 호출 응용 프로그램의 매니페스트 파일입니다 :

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

<uses-sdk 
    android:minSdkVersion="13" 
    android:targetSdkVersion="19" /> 

<!-- 
     TODO - Using a permission element, 
     define a custom permission with name 
      "course.labs.permissions.DANGEROUS_ACTIVITY_PERM" 
     and "dangerous" protection level. 
--> 
<permission 
    android:name="course.labs.permissions.DANGEROUS_ACTIVITY_PERM" 
    android:description="@string/permission_description" 
    android:label="@string/permission_label" 
    android:protectionLevel="dangerous" > 
</permission> 

<application 
    android:allowBackup="true" 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" 
    android:theme="@style/AppTheme" > 

    <!-- TODO - enforce the custom permission on this Activity --> 

    <activity 
     android:name=".DangerousActivity" 
     android:label="@string/app_name" 
     android:permission="course.labs.permissions.DANGEROUS_ACTIVITY_PERM" > 

     <!-- 
      TODO - add additional intent filter info so that this Activity 
       will respond to an Implicit Intent with the action 
       "course.labs.permissions.DANGEROUS_ACTIVITY" 
     --> 

     <intent-filter> 
      <action android:name="course.labs.permissions.DANGEROUS_ACTIVITY" /> 

      <category android:name="android.intent.category.DEFAULT" /> 
     </intent-filter> 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

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

답변

3
홈 화면 않기 때문에

MainActivity은 홈 화면 런처로 시작할 수 없습니다 course.labs.permissions.DANGEROUS_ACTIVITY_PERM 권한을 보유하고 있지 않으며 해당 권한으로 해당 활동을 방어하고 있습니다.

+0

감사합니다. 그렇다면 인 텐트 필터에 뭔가 추가해야 할 필요가 있습니까? –

+0

@RogerW : 아니요, MAIN/LAUNCHER 활동에서 허가를 제거해야한다는 의미입니다. 별도의'LAUNCHER' 액티비티를 갖거나 권한을 완전히 제거하십시오. – CommonsWare

+0

Mr Mr. @ CommonsWare, 대단히 감사합니다. –

관련 문제