0

2 つの単純なプロジェクトを作成しました。最初に、マニフェストへのアクセス許可を入れました。

<permission android:name="com.example.MODULE"
            android:label="Example module"
            android:protectionLevel="dangerous" />
<application android:label="@string/app_name" android:theme="@style/Theme.Sherlock.Light" android:icon="@drawable/ic_launcher">
    <activity android:name="MyActivity"
              android:label="@string/app_name"
              android:exported="true"
              android:excludeFromRecents="true">
<intent-filter>
            <action android:name="android.intent.action.MAIN"/>
            <action android:name="com.example.graph.SHOW"/>
            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>

そして 2 番目のプロジェクトでは:

<uses-permission android:name="com.example.MODULE" /

しかし、2 番目のプロジェクトから uses-permission を削除してからアクティビティを開始すると、次のようになります。

startActivity(new Intent("com.example.graph.SHOW"))

最初のプロジェクトの - それはまだ始まっています。しかし、なぜ?勝手に始めてどうするの?権限を使用して 2 番目のプロジェクトを正しく保護するにはどうすればよいですか?

4

1 に答える 1

0

アプリケーションを起動するためのアクセス許可は必要ありません。開発者に許可を求めることなく、すべてのアプリを実行できます。たとえば、開発者に尋ねることなく、このコードを実行できます (有名なバーコード スキャナーを起動します)。

Intent intent = new Intent("com.google.zxing.client.android.ENCODE");
intent.putExtra("ENCODE_TYPE", "TEXT_TYPE");
intent.putExtra("ENCODE_DATA", output);
intent.putExtra("ENCODE_FORMAT", "QR_CODE");
intent.putExtra("ENCODE_SHOW_CONTENTS", false);
于 2013-01-13T17:57:43.410 に答える