2016-12-02 7 views
0

私はプログラムでモバイルデータをオン/オフする必要があります。この問題については、MODIFY_PHONE_STATE権限を使用する必要があります。 アプリにシステム権限がない限り、最新のAndroidバージョンではわかっていないので、非ルートの携帯電話ではは利用できません。Android:システム権限を正式に取得する方法

システムアプリとしてアプリに署名する方法をいくつか回避する方法があります。しかし、私が理解しているように、Playストアでそのようなアプリを公開することはできません。

私の質問は次のとおりです - 正式にシステム権利を取得することは可能ですか?どのようにすれば、私はそれらを得るために行かなければならないのですか?

+0

"正式にシステム権利を取得することは可能ですか?" - 独自のカスタムROMを構築する。次に、ROMに署名するために使用した署名キーでアプリに署名します。または、デバイス製造元とのディストリビューション契約に署名して、ROM署名キーでアプリに署名します。 – CommonsWare

+0

ありがとうございます。システムを正しく稼働させるために1つのアプリケーションが必要な場合は、カスタムディスクを作成することは適切ではありません。ディストリビューション契約は容認できる決定であるかもしれませんが。しかし、私はOSの作成者(Google)ではなく、デバイスメーカーと話し合うべき理由を理解していませんか?そしてそれはどんなメーカーですか?サムスンと契約を結ぶと、私のアプリはSamsungのデバイスで動作し、HTCデバイスでは動作しないということですか? – user2775914

答えて

1

これを取得するにはルートデバイスであるか、自分でデバイスイメージを作成する必要があります。システム権限の考え方は、システムの作成者(OEM)が信頼するアプリケーションだけが要求することができるということです。また、どのように許可されているのか(アプリがインストールされているディレクトリに基づいており、ルートを持っている場合はアクセスできます)、デバイスをルーティングすることで取得できます。しかし、ルートなしで、または独自のOSイメージを作成することなく、それを行う方法はありません。

+0

ありがとうございます。私の場合、デバイスを起動することは受け入れられない方法です。私はシステム権限の考え方を理解しています。実際に私は質問について正確に話しています - 私は信頼できるアプリになるために何をすべきですか?そして誰が私を信用するべきですか?デバイスメーカ(ROM作成者)ですか?自分のデバイスで自分のアプリを実行したい場合、私は各メーカーと話し合うべきですか? – user2775914

+1

OEM(またはシステムイメージをインストールする者)。基本的には、rootにならない場合は、あらかじめインストールされているアプリにする必要があります。だから、OEMにあなたを信頼できるアプリにするだけでなく、ユーザーが購入したときにあなたのアプリをインストールさせるようにしてください。彼らは価格のためにそれをやるか、またはあなたが非常に普及している場合(facebook popularのような)、それは安くはありません。 –

0

MODIFY_PHONE_STATEはシステム専用のアクセス許可ですので、電話をかけない限りその許可を得る方法はありません。

関連する問題