Frage

In meinem Programm fügt es eine Verknüpfung zu dem Bildschirm. Ich bekomme das Symbol auf dem Bildschirm in Ordnung, aber wenn ich es klopfen, erhalte ich:

03-01 20:00:29.410: ERROR/AndroidRuntime(796): java.lang.SecurityException: Permission Denial: starting Intent { data=http://www.example.com/ flags=0x14000000 comp={com.isaacwaller.example/com.isaacwaller.example.ExampleCut} } from ProcessRecord{435c7398 796:android.process.acore/10005} (pid=796, uid=10005) requires null

Kennen Sie das Problem? Danke,
Isaac

War es hilfreich?

Lösung 2

es herausgefunden, hat dieses Bild unter <activity> Tag der Tätigkeit:

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

Andere Tipps

Ich hatte so etwas passieren, wenn ich versehentlich den Aktivitäts-Tag für einen meiner Tätigkeit in meinem Manifest dupliziert hatte. Ich hatte so etwas in meiner Anwendung Abschnitt.

<activity android:name=".ConventionHome" android:label="@string/app_name">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>

<activity android:name="ConventionHome"></activity>

Wenn ich den zweiten Aktivitäts-Tag entfernt, begannen die Dinge normal arbeiten.

So etwas sollte funktionieren:

<intent-filter>
    <action android:name="com.example.Project.Action"/>
    <category android:name="android.intent.category.DEFAULT"/>
</intent-filter> 

innerhalb der Aktivität Erklärung im Manifest.

Ich lief in dieses Problem auch, und es stellte sich heraus, es war, weil die Aktivität nicht zu anderen Prozessen ausgesetzt war. Ich hatte das Android hinzuzufügen: exportiert = „true“ -Attribut auf den Aktivitäts-Tag in meinem Manifest.

Siehe http://developer.android.com/guide /topics/manifest/activity-element.html#exported für weitere Informationen.

Ich habe nicht in diese laufen persönlich, aber ich habe einige der Forschung und fand die folgenden.

Offenbar was auch immer versucht, die App aufrufen oder wenn Ihre Anwendung hat einen Anruf eine Absicht zu schaffen und eine Aktivität von einigen Absicht beginnen die UID ist nicht das gleiche.

In ActivityManagerServer.java gibt es unter Urteil darin.

int checkComponentPermission(String permission, int pid, int uid, int reqUid)
// If the target requires a specific UID, always fail for others.
   if (reqUid >= 0 && uid != reqUid) {
       return PackageManager.PERMISSION_DENIED;
   }

Ich werde einige Tests auf diese und sehen tun, wenn ich dies in einer Testanwendung wiedergeben kann und alle zusätzlichen Feedback.

Vergewissern Sie sich, nur öffentlich ausgesetzt Aktivitäten jeglicher Art Absichten aufzurufen versuchen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top