問題タブ [android-permissions]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
24093 参照

android - Androidのミュート/ミュート解除電話

私の目標は、2つの操作をサポートすることです。

  • 電話をミュートする(バイブレーションを有効/無効にしている可能性があります)ので、電話やSMSを受信して​​もノイズは発生しません

  • 電話のミュートを解除し、電話をミュートする前の状態に音量を復元します

これどうやってするの?AndroidManifestにはどのような権限が必要ですか?

0 投票する
2 に答える
8980 参照

android - コードからマニフェストのアクセス許可を確認する方法はありますか?

コードから manifest.xml の特定の権限を確認するにはどうすればよいですか? アプリケーションに必要なアクセス許可が欠落している場合、例外をスローしたいと考えています。

たとえば、GPS を使用している特定のアクティビティの起動時に Android も例外をスローすることはわかっていますが、マニフェストを確認して、アプリケーション自体の起動時に例外をスローする必要がありますFINE_LOCATIONCOARSE_LOCATIONこれは、位置情報へのアクセスだけでなく、他の権限にも当てはまります。

どんな提案も役に立ちます。

0 投票する
33 に答える
523015 参照

android - 例外'オープンに失敗しました:AndroidでのEACCES(許可が拒否されました)'

私は得ています

開くことができませんでした:EACCES (Permission denied)

ライン上OutputStream myOutput = new FileOutputStream(outFileName);

ルートを確認してみandroid.permission.WRITE_EXTERNAL_STORAGEました。

この問題を解決するにはどうすればよいですか?

0 投票する
1 に答える
12212 参照

android - アプリがすべてのデバイスに表示され、一部のデバイスでオプション機能を有効にできるようにするオプションの権限?

Androidの多くの機能では、マニフェストで使用許可を設定する必要があります。これらの値は、どのデバイスが市場でそれらを見るかを決定します。ただし、この機能がオプションである場合はどうすればよいですか...多くのデバイスで実行できるが、少数のデバイスでのみ許可が必要な場合はどうすればよいですか?

例:複数の機能と大量のコンテンツを備えたアプリを考えてみましょう。アプリには会社に電話をかけるためのボタンがあります。これは、番号を書き留めたり、電話アプリにコピーして貼り付けたりするのとは対照的に、便利な機能です。ただし、これは必須ではありません。

その機能が使用され、電話の許可がアプリに追加された場合、それはすべて電話にとっては問題ありませんが、タブレットは市場でアプリを見ることができません。

この問題の一般的な解決策は何ですか?

異なる権限で複数のアプリを作成することもできますが、そのアプローチには問題があります(余分な開発時間、メンテナンスの一貫性を維持することの難しさ、レビューと評価が異なるアプリに分割されている場合、異なる種類のオプションの権限が異なる場合組み合わせごとにアプリが必要になる場合があります)。

アプリは、機能が利用可能かどうかをプログラムで確認し、デバイスに応じて有効または無効にすることができます。それに関する問題は、アプリに権限がない場合、その機能を使用しようとするとクラッシュすることです。また、アプリに権限がある場合、一部のデバイスはアプリをで見つけることができません。市場。

場合によっては、問題を回避するために、アプリから不要な機能を完全に削除できる場合があります。これらの機能は、それをサポートするデバイスに「あると便利」であるため、これも優れたソリューションではありません。

はい、私は知っていますAndroidで「オプションの」権限を持つことは可能ですか?同様の質問です。新しい情報や、もしあれば人々が見つけた他の回避策を期待しています...この問題の解決策は何ですか?私が上にリストしたもの以外に他のアプローチを持っている人はいますか?

0 投票する
3 に答える
36591 参照

android - アクセスネットワークの状態(ACCESS_NETWORK_STATE)とWIFIの状態(ACCESS_WIFI_STATE)のアクセス許可の違いは何ですか?

Androidマニフェストの[権限]タブのドロップダウンには、とというオプションがありandroid.permission.ACCESS_NETWORK_STATEますandroid.permission.ACCESS_WIFI_STATE。それらの違いは何ですか?ACCESS_NETWORK_STATEより一般化されていACCESS_WIFI_STATEますか?

0 投票する
2 に答える
14131 参照

android - 特定のアプリからの Android ブロードキャスト レシーバーの制限

2つのアプリケーションがあります。
サービスを使用する場合、許可を設定して、app1インテントを にのみ送信できるようにすることができますapp2: ( ) で
許可を定義し、 でその許可を使用します。 のサービスはその許可によって保護されています。 このように、 のみが のサービスにインテントを送信でき、他のアプリは (私の署名が漏洩しない限り) のサービスにインテントを送信できません。app2protection level: signatureapp1
app2
app1app2app2

ブロードキャスト レシーバーでも同じことができますか?

  • app1: sendBroadcast(意図、許可)
  • app2: パーミッションを定義し、そのパーミッションを使用します。

sendBroadcast(intent, permission) の使用に関する私の理解では、アプリケーションは許可を「使用」する必要はありません。つまり、どのアプリケーションでもインテントを に送信できますapp2app2これらの許可パラメーターは、他のアプリケーションがこのインテントを受け取らないようにするため、に対してのみチェック されました。( を削除し、定義された同じパーミッション文字列でapp2fake をインストールすると、 fakeは からインテントを取得できますが、これは予想外です)app2app2app1

ところで、アプリケーションがパーミッションを定義してそれ自体を使用する場合、protectionLevel(signature) は意味がないようです。これは本当ですか?

これで、追加のアクセス許可を設定できます。

  • app1: パーミッションを定義し、そのパーミッションを使用します。
  • app2: 受信者はその権限のみに制限されます。

繰り返しますが、 を削除し、まったく同じ権限でapp1fake をインストールすると、 fakeは に偽のインテントを送信できます。偽のインテントを受信しないようにするにはどうすればよいですか?app1app1app2app2

ありがとう

0 投票する
2 に答える
1878 参照

android - Androidマニフェストファイル:アプリはタブレットをサポートしていますが、市場では「互換性がありません」とマークされていますか?

私はマニフェストファイルを処理するためにフォーラムで他のいくつかのことを読んでいます。私は答えを見つけましたが、それでも私の特定の問題には対処していません。私のアプリケーションはすべての携帯電話またはタブレット用に設計されていますが、GoogleのPlayストアには「互換性がありません」と表示されます。アプリケーションを電話やタブレット(携帯電話または単にwifi)で利用できるようにしようとしています。どんな援助も素晴らしいでしょう、事前にありがとう。このマニフェストファイルに明らかに何かが欠けています。

要求する権限は次のとおりです。

特徴:

これはかなり奇妙なエラーです。さらに、要求しているように見える方法論は無効です。

0 投票する
2 に答える
2243 参照

android - Androidmanifest.xml でデフォルトの権限を変更する方法

「Androidmanifest.xml」について質問がありました。アプリケーションのインストールのデフォルト設定は、アプリケーションが SD カードと電話通話に対する許可を持っていることです。

アプリケーションがデフォルトとして設定されている電話コールではなく、SD カードにのみアクセスできるように設定するにはどうすればよいですか?

0 投票する
1 に答える
333 参照

android - EDGE でデータ転送を行うことができません

この問題を解決するために多くの試行錯誤を試みてきましたが、それ以上のオプションが不足しているようです。

シナリオ: HttpClient を使用して、サーバーでホストされている php ページに対して単純な HTTP POST トランザクションを実行する AsyncTask があります。これはテスト済みで、接続タイプが Wifi の場合は完全に正常に動作します。

問題: データ接続を EDGE に移行するとすぐに、データ転送が機能しません。次のエラーが表示されます。

これは通常、ローエンドのデバイスで発生します。データ接続が存在することを確認しました。ブラウザを使用すると正常に動作します。この問題は、Google マップなどのブラウザ以外のすべてのアプリケーションとは無関係のようです。Google プレイスもデータ転送を行うことができず、ホストが見つからない例外をスローしています。

これが接続が遅いためかどうかを確認するためにタイムアウトを増やしてみましたが、緩和はありません.

権限

0 投票する
5 に答える
5762 参照

android - Android パーミッションのレベルの決定

Android のアクセス許可がいくつかありますが、それらがどのアクセス許可 PROTECTION LEVEL に属しているかを知りたいです。これを確認する方法を知っている人はいますか?たとえば、android.permission.RECEIVE_BOOT_COMPLETED許可の PROTECTION LEVEL を知る必要がありますが、さらに多くのことを確認したいと考えています。

編集:

明確に説明していないことがわかります。つまり、パーミッションが導入された API レベルではなく、パーミッション保護レベル (Normal、Dangerous、Signeture、Signature、または System) の 4 つのうちの 1 つです。たとえば、アプリケーションのインストール中にこの権限をユーザーに提示する方法を決定します。特定のアクセス許可がどの保護レベルに属しているかを確認するにはどうすればよいですか?