問題タブ [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.
android - AndroidUSBデバイスのアクセス許可とインテントフィルター
USBデバイスと対話するAndroidアプリがあります。これは、デバイスと通信するための許可を取得するためのAndroid開発者の公式ドキュメントに次のように記載されています。
注:アプリケーションが接続時にUSBデバイスを検出するためにインテントフィルターを使用する場合、ユーザーがアプリケーションにインテントの処理を許可すると、アプリケーションは自動的に許可を受け取ります。そうでない場合は、デバイスに接続する前に、アプリケーションで明示的に許可を要求する必要があります。
インテントフィルターは、AndroidManifest.xmlで宣言され、vendor-idとproduct-idを含むリソースファイルを使用します。
宣言されたインテントを使用しても、デバイスを接続しても何も起こりません。したがって、許可を明示的に求めることを含む同じ公式文書に記載されている方法を使用する必要があります。
これは機能し、デバイスと通信できますが、アプリが起動するたび、またはデバイスが再接続されるたびに、ユーザーが許可を与える必要があります。最後に、これにより、デバイスが接続されてアプリケーションが起動するたびに確認を求めるメッセージがユーザーに表示されます。毎回同じ権限を与えることは望ましくありません。
したがって、「...自動的に許可を受け取る...」の部分が機能していない場合。
インテントフィルターを機能させるにはどうすればよいですか?
私は何が欠けていますか?
他に選択肢はありますか?
この質問:Android USBアクセス許可ダイアログが表示されることはありませんが、逆の問題が発生しましたが、解決策は機能しません。
ここで説明したように、アプリをシステムアプリにして、権限をバイパスすることもできません。Androidのサービスを介したUSBオープンアクセサリの権限
どんな助けでも大歓迎です
android - Android開発:使用許可を機能させる方法は?
使用権限をどのように機能させることができるのでしょうか。実際、私は簡単なコードで電話をかけようとしていますが、電話アプリでは、緑色の電話を押して電話を確認する必要があります。アプリフォンを自動作成するために紹介してみました
AndroidManifest.XMLにありますが、何も変更されません。使用許可があるかどうかは関係ありません。電話を確認する必要があります。
私は許可を間違えていますか?
android - HARDWARE_TEST パーミッション エラーを修正するには?
カメラや Wi-Fi などのハードウェア部品を使用する Android アプリを開発しています。マニフェストで HARDWARE_TEST 権限を使用しています。
私はそれで問題を抱えたことは一度もありませんが、突然、ファイルを日食してマニファイすると、次の行に新しいエラーが表示されます。
「権限はシステムアプリにのみ付与されます」
私がそれを修正しなければならない唯一の方法は、この行を削除することです。
なぜこのエラーですか?? どうすれば修正できますか?ありがとう
編集:
私は解決策を見つけ、自分の質問に答えました:
私の問題は android:targetSdkVersion のマニフェストの値で、これは 15 で、proyect ビルド ターゲットは API レベル 16 (Android 4.1.2) でチェックされました。
そのため、android:targetSdkVersion の値を 16 に変更し、Proyect プロパティ > Android > "Proyect Buid Target" も 16 にチェックしました。
android - ACCESS_FINE_LOCATION が既にある場合、ACCESS_COARSE_LOCATION を省略できますか?
マニフェストで既にアクセス許可を要求している GPS アプリがありますACCESS_FINE_LOCATION
が、必要なライブラリ (MoPub) を追加したいと考えていますACCESS_COARSE_LOCATION
。
それでACCESS_FINE_LOCATION
十分だと思い込んでいACCESS_COARSE_LOCATION
て、マニフェストから除外できますか?
android - 同じ署名で署名されている場合、別のAndroidアプリのC2DMインテントを受け取ることはできますか?
を受け取ったアプリ(com.example.myapp
)をインストールしましたC2DM
Intent
。Intent
これに便乗して、別のアプリでこれらに応答して独自の処理を実行したいと思います( com.example.myapp2
)。この回答によると、C2DM
クライアントシステムは以下を探します。
インテントの放送受信機:
com.google.android.c2dm.intent.REGISTRATION
それには許可があります:
.permission.C2D_MESSAGE
元のアプリでは、C2DMドキュメントで指定されているように、次の権限が定義されて使用されています
これはcom.example.myapp2
のマニフェストであり、その中で私はその許可も使用します。
私C2DMReceiver
はcom.example.myapp2.C2DMReceiver
です。com.google.android.c2dm.intent.REGISTRATION
Intent
登録は気にしないので、sをリッスンしていないことに注意してください。私はすでに受信しているIntent
sを受信することだけを気にします。com.example.myapp
私IntentFilter
のforsでは、aがどのように見えるかについて正確に特定されていないため、とsのcom.google.android.c2dm.intent.RECEIVE
Intent
両方をフィルタリングします。どんな助けでもいただければ幸いです。com.example.myapp
com.example.myapp2
category
C2DM
C2DM
Intent
許可com.example.myapp2
があることを確認しました。com.example.myapp.permission.C2D_MESSAGE
デバッグキーを使用して実行する場合は持っていませんが、リリースキーを使用して実行する場合は持っています。明らかに、リリースキーを使用してデバイスでバージョンを実行しています。
受け取ったときcom.example.myapp
は受け取りC2DM
Intent
com.example.myapp2
ません。デバッグする方法やこれを機能させる方法についてのアイデアはありますか?それも可能ですか?
android - Android: アプリケーション レベルの権限
コンテンツ プロバイダーを含む「TestApp」というアプリケーションを作成しました。コンテンツ プロバイダーは、他のすべてのアプリケーションへのデータベース アクセスを共有します。「TestApp」のコンテンツプロバイダーにアクセスするための特定のタイプの許可を持つ他のいくつかのアプリケーションのみを許可するAndroidのメカニズムはありますか?
「TestApp」のコンテンツ プロバイダーにアクセスするための特定のアクセス許可を持たないアプリケーションは望ましくありません。
初心者なので、質問の基準がわかりません。
助けてください。
android - Android サービスから getevent を呼び出すことは可能ですか?
Android サービスから getevent を実行し、adb を実行して開発マシンのコマンド プロンプトから getevent を呼び出した場合と同様の出力を取得することはできますか? 次のようなものを試すと:
各デバイスで得られる出力は次のようになります。
/dev/input/event[n] を開けませんでした。権限が拒否されました
Android のセキュリティ保護のために、このような低レベルの情報にアクセスすることはできないのでしょうか? 「ルート化された」デバイスで可能でしょうか?
これを行う理由: ユーザビリティ テストの目的で、Android デバイスでのユーザーのアクション (タッチおよびジェスチャ イベント) を記録したいと考えています。アクセシビリティ サービスは有効な方法のようですが、情報は十分に詳細ではありません。たとえば、スワイプジェスチャの場合、ユーザーがスワイプした場所の画面座標を取得できません。タッチスクリーンから低レベルの入力を取得することで、より詳細な情報を取得できるのではないかと考えていました。多分これを行うためのより良い方法がありますか?(私は Android の世界では初心者です。この種のことは、Windows では簡単です。)
android - インストール前にAndroidでアプリケーションの権限をスキャンする
私はアンドロイドにまったく慣れていないので、疑問に思いました...モバイルにインストールする前に、アンドロイドアプリケーションの許可リストをスキャンすることは可能ですか? たとえば、ユーザーへのアクセス許可のリストを示すダイアログ ボックスが表示された場合、アプリケーションでそれらのアクセス許可をスキャンし、スキャン後にユーザーにインストールを提案します。
java - Android パーミッション ACCES_NETWORK_STATE バグ?
Android アプリで Google V2 を使用していますが、うまく機能します。ただし、実行するたびにEclipseから次の警告が表示されます。
しかし、私はすでにこの権限をマニフェストに追加しており、これをxmlに持っています:
私はそれを正しく設定したと思いますが、Eclipseはまだこの警告を出しています。誰かが理由を知っていますか?
android - 許可なくサービスの意図を開始することは許可されていません - 送信者は許可を取得しません
私は Mark Murphy の優れた Commonsware の本を読んでいますが、消化するのは大変です。「FakePlayer」アプリを作成しました (mp3 プレーヤーのふりをします)。サービスが含まれています。学習経験として、クリック ハンドラーが行う簡単なアプリ (ボタンしかない) を作成しようとしました。
正常に動作しました - サービスは正常に開始されました。Eclipse がサービスに対する権限がないことを訴えていることに気付いたので、android:permissions と android:exported の 2 行を追加してサービスのマニフェストを更新しました。
Eclipseで「デバッグ」を使用して、プレーヤーアプリをデバイス(Galaxy S2を使用しています)にリロードしました。うまくいったようです。スターターアプリが許可例外を引き起こしました。これは予想通りでした。
次に、スターター アプリのマニフェストに追加しました (アクセス許可を与えるため):
スターター アプリをデバイスにリロードしました (Eclipse でデバッグを使用)。スターターアプリで引き続き許可エラーが発生します。
デバイスから両方のアプリを削除し、(デバッグを使用して) 再インストールしました。最初にサービス アプリ、次にスターターを使用しました。それでもパーマエラーが発生します。
マーフィー氏の高度な Android ブックの「リモート サービスの使用方法」セクションに取り組んでいるので、これはおそらく複数のアプリで作業するための最良の方法ではないことに気付きました。
「adb shell dumpsys package」を実行し、スターター アプリを見つけたところ、「permissionsFixed=false」があり、「grantedPermissions」セクションがないことがわかりました。これは、スターター アプリのマニフェストの変更によって、パーマがアプリに追加されなかったことを意味します。しかし、私には理由がわかりません。学習経験として、これまでのところ混乱しか生じていません....
手がかりは大歓迎です!ありがとう!