2010-11-19 14 views
5

アプリケーションマニフェストにアクセス許可を追加しようとしているため、ユーザーが実行時にインストールする他のアプリケーションにアクセスできます。私はこれを行う方法がマニフェストのパーミッションツリーを定義し、次にそのツリーの下にパーミッションを追加するためにPackageManager.addPermission()を使用することだと思いました。しかし、私はこれを動作させることができず、私が見つけたドキュメンテーションは決定的なものではありませんでした。誰かが私に簡単な例でこれを行う方法を教えてもらえますか?ありがとう!プログラムマニフェストへのアクセス許可の追加

+0

あなたの答えを読んだ後、私は何をしようとしているのかをさらに説明します。アイデアは、私のアプリはコンポーネントのようなアドオンと通信するということです。当然のことながら、これらのアドオンはすべてアプリケーションによって認識されています(権限に問題はありません)が、特別なアクティビティで新しいアドオンをインストールできるはずです。利用可能なアプリケーションの一覧が表示されます。それはインストールされます。それで、この新しいアドオンは私のメインアプリのメニューに表示され、それと対話できるはずです。私はすでに似たようなことを見てきましたが、それは複雑な問題だと私は理解しています。 – androidtje

答えて

1

他のアプリケーションへのアクセス権は、アプリケーションおよびアプリケーションのユーザーIDで実行されているアプリケーションにのみ適用されます。

+0

まあ、あなたが意味するものは本当にわかりませんが、IDが異なる場合でも、他のアプリケーションのコンポーネントにアクセスすることは可能です。それはすべてAndroidセキュリティフレームワークで説明されています。 – androidtje

+0

@androidtje:自分のアプリケーションの外では何も変更できません。その反対側を説明しているドキュメントの部分を私に指摘してください。 –

+0

アイデアは、私のアプリの外に何かを変更することではありません。後者がその可能性を提供している場合は、サードパーティのアプリケーションとやり取りするために必要な権限をアプリに付与したいだけです。 – androidtje

1

ルーツ以外のデバイスでは使用できません。セキュリティ問題が関与しています。

+0

はい、私は根ざしたデバイスが可能になることを知っています。しかし、署名の許可はどうですか?私はAndroidのセキュリティフレームワークが、あなたが望むアプリケーションだけがあなたのアプリにアクセスできるように、適切な環境を定義することができたと考えました。 – androidtje

0

これは可能だとは思わなかった。私は、コードがコンパイルされるときにすべてのアクセス許可を追加しなければならないと思っていました(講演者が間違っているかもしれないと思っていました)。後で権限を追加できる場合は、自分の許可なくすべての情報にアプリがアクセスできるようにしませんか?また、アプリをダウンロードする際に確認画面にポイントが表示されません。これは、あなたが警告するアクセス許可が、それが使用するアクセス権のすべてではない可能性があるためです。

私の意見では、それは可能ではないと思います。それはあまりにも容易に虐待される。私はそれが可能だとは思わないし、あなたはそれについての情報を見つけるのは難しいと思う。

1

セキュリティ上の理由から、ルーテッドデバイスのみがそのケーブルに接続されています。

関連する問題