2012-10-24 6 views
6

マニフェストに "android.permission.WRITE_SECURE_SETTINGS"を追加しました。しかし、まだ私は、エラーメッセージ "WRITE_SECURE_SETTINGS"が必要です。マニフェストに追加した場合でも、WRITE_SECURE_SETTINGS権限エラーが発生しました

私はこれについて多くの話をしており、この設定はサードパーティのソフトウェアでは禁止されています。

私のアプリケーションにこの権限を与えることができる他の方法はありますか?

私はこのadbコマンドを見ていますが、私のデバイスに自分のアプリケーションを追加する方法をあまり知らないのですが、以下のコマンドは読み取り専用でコピーできなかったため、ファイルシステム?以前に読んだことがあるよう

adb remount 
adb push app.apk /system/app/ 

答えて

10

はまず、WRITE_SECURE_SETTINGSはアプリケーションでは使用できませんです!したがって、あなたがルートベースであるかプロダクションビルドであるかにかかわらず、このアクセス権を使用することはできません。だから、

、あなたは、この設定を有効に何が必要ない独自のファームウェアを作成し、あなたが望むものは何でもデバイス上でそのファームウェアをロードしたい場合。あるいは、既存のファームウェア改造(Cyanogenなど)に変更を加えることもできます。

いくつかの他のアプリケーションがAPIを介して公開されていない関数にアクセスするためにJavaを使用してReflectionのような技術を使用し、あなたはおそらく同じことを試すことができます。

第2に、adb remountは、電話機がルートされていないかファームウェアがデフォルトで有効にしていない限り、本番ビルドでは機能しません。

11

私は最近、この非常に苦労しました。私のクライアントは、デバイスが充電中(ワイヤレス充電器)のときにNFCをオフにしてから、充電器から取り外されたときにオンにするアプリが必要でした。私はNexus 7でKitKatを実行していましたが、マニフェストにはWRITE_SECURE_SETTINGS、アプリは/system/app/であっても動作しませんでした。

4.4ではセキュリティが強化されています。

  1. マニフェストは、Appが/system/app/
  2. にパッケージは私が根付いキー(任意のキー)

によって署名されるWRITE_SECURE_SETTINGS

  • を持っている:3つのものが該当する場合、4.3ではしかし、それは動作しますhttp://www.wugfresh.com/nrt/の素晴らしいNexus Root Toolkit(NRT)を使用していたデバイスは、次にBusyBoxとシステムアプリムーバーをインストールしました。

    https://play.google.com/store/apps/details?id=stericson.busybox https://play.google.com/store/apps/details?id=de.j4velin.systemappmover

    カスタムの署名付きAPKをインストールし、システムアプリムーバーを使用してその場所に移動してから、デバイスを再起動しました。それは完璧に働いた。お役に立てれば。

  • +0

    あなたは何を知っていますか追加のセキュリティは4.4にありますか? – brianestey

    +0

    6カ月以上経っていますが、4.4で/ app/appにrootとして実行するアプリケーションを思い出すと、システムに署名したものと同じAPK署名鍵で署名する必要があります。 –

    +0

    私はそれがしばらくしていることを知っていますが、これを述べるリンクや参照はありますか?私はオンラインで何かを見つけたことはありませんが、システムアプリを置く新しい場所として/ system/priv-appについて読んだことがありますが、それは私にとってもうまくいかないようですが。 – brianestey

    3

    WRITE_SECURE_SETTINGS権限を必要と私は使用されるAPIについては、私はマニフェストでこれを含める必要がありました:

    <manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    ... 
    coreApp="true" 
    android:sharedUserId="android.uid.system"> 
    
    <uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS"/> 
    ... 
    

    は、参考文献:https://github.com/android/platform_packages_apps_settings/blob/master/AndroidManifest.xml

    私もシステムアプリとしてアプリケーションを実行する必要がありましたが(/ system/appの下)。 これは、次のようになります。http://www.addictivetips.com/mobile/how-to-install-any-app-as-system-app-on-android/

    0

    通知アクセスを有効にすることでこの問題を解決できました。

    go to settings 
    click on sound and notification 
    scroll down 
    click on notification access 
    
    0

    私もこのような状況に会った、そして、私は以下の規則に従う:私自身のファームウェア 3.addのLOCAL_CERTIRICATEを2.Makeマニフェスト に 1.addのWRITE_SECURE_SETTINGSを:=プラットフォーム

    関連する問題