AIDLを介して他のアプリケーションによってバインドされるサービスを作成し、次のようにしてマニフェストに追加します。
<service android:name=".MyService">
<intent-filter>
<action android:name="org.example.android.myservicedemo.IService" />
</intent-filter>
</service>
ここで、IServiceはAIDLインターフェースです。
このように、Eclipseは「エクスポートされたサービスは許可を必要としない」という警告を表示します。を削除するintent-filter
と警告は消えますが、アプリケーションは明らかにサービスにバインドできません。
この警告はどういう意味ですか?
AndroidManifest.xmlに新しい<permission>を作成し、その名前を宣言の
—
Jens
android:permission
属性として使用します<service>
。または警告を無視してください-サービスは何をするつもりですか?サービスを「内部」に保つことで問題がなければ、設定android:exported="false"
するだけではるかに簡単になります<service>
次に、警告を無視するか、<permission>を追加するか、それらすべてが同じ証明書で署名された独自のアプリケーションである場合は「signature」を使用します。それ以外の場合は「通常」で続行します。
—
イェンス
すでに(リリース)証明書を使用してアプリケーションに署名しています-署名保護は、権限を要求するアプリケーションが、権限を定義したアプリケーションと同じ署名であることを確認します。
—
イェンス
@ジェンズありがとう...それは私を助けてくれた...ところであなたは答えとしてコメントを追加することができます。enzom83にそれを受け入れさせます。
—
Vijay C
Service
、AIDLインターフェースを通じて公開されている任意のメソッドを呼び出すことができることを意味します。