User-agent: Mediapartners-Google Disallow: User-agent: * Disallow: /search Allow: / Sitemap: http://nano7mobile.blogspot.com/sitemap.xml Nano Mobile: [howto] 3-way power menu fo 5.0.1 deodex stock topic

[howto] 3-way power menu fo 5.0.1 deodex stock topic






was asked to make this statement,sorry for the English ,it's Google translator :p

result http://forum.xda-developers.com/goog...eodex-t2997128

for made this, need 5.0.1 (deodex) http://forum.xda-developers.com/goog...ework-t2994027
for decompile im use ApkTools200RC3m http://d-h.st/26rF

part 1



decompile framework-res.apk


open \framework-res\res\values\arrays.xml
looking for <item>power</item> immediately below this line inserted


Code:


<item>reboot</item>
<item>recovery</item>


then immediately open strings.xml and add at the end

Code:


<string name="reboot_recovery">Recovery</string>

same thing in the folder values-ru (or similar for your country)

Code:


<string name="reboot_recovery">Рекавери</string>

example:
values-ru (for Russia)
values-it (for Italy)
and etc....

from arhive framework add files

compile ,then assembled renamed framework222-res.apk and decompile again (that would be assigned id)
take away C:\ApkTools200RC3m\framework222-res\res\values\public.xml in the main that
(replaced the one that is there on this)
open public.xml in the editor (we'll be here to watch the assigned id)
collect ...



part 2



decompile android.policy.jar
from arhive policy add files

open GlobalActions.smali

paste below this line 20: Lcom/android/internal/policy/impl/GlobalActions$MyAdapter;,

the following:


Code:


      Lcom/android/internal/policy/impl/GlobalActions$RebootAction;,
        Lcom/android/internal/policy/impl/GlobalActions$RebootRecovery;,


paste below this line 35: .field private static final GLOBAL_ACTION_KEY_POWER:Ljava/lang/String; = "power"

the following:


Code:


.field private static final GLOBAL_ACTION_KEY_REBOOT:Ljava/lang/String; = "reboot"

.field private static final GLOBAL_ACTION_KEY_RECOVERY:Ljava/lang/String; = "recovery"


and delete this

.field private static final GLOBAL_ACTION_KEY_SETTINGS:Ljava/lang/String; = "settings"


field line 1026:
const-string v0, "airplane"

and replace the code from .line 275 to .line 276


Code:


  :cond_3
    const-string v0, "airplane"

    invoke-virtual {v0, v7}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v0

    if-eqz v0, :cond_4



at


Code:


  :cond_3
    const-string v0, "reboot"

    invoke-virtual {v0, v7}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v0

    if-eqz v0, :cond_4

    .line 276
    iget-object v0, p0, Lcom/android/internal/policy/impl/GlobalActions;->mItems:Ljava/util/ArrayList;

    new-instance v1, Lcom/android/internal/policy/impl/GlobalActions$RebootAction;

    const/4 v2, 0x0

    invoke-direct {v1, p0, v2}, Lcom/android/internal/policy/impl/GlobalActions$RebootAction;-><init>(Lcom/android/internal/policy/impl/GlobalActions;Lcom/android/internal/policy/impl/GlobalActions;)V

    invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z

    goto :goto_3


now find
const-string v0, "settings"

and replace the code from .line 290 to .line 292


Code:


:cond_7
    const-string v0, "settings"

    invoke-virtual {v0, v7}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v0

    if-eqz v0, :cond_8

    .line 291
    iget-object v0, p0, Lcom/android/internal/policy/impl/GlobalActions;->mItems:Ljava/util/ArrayList;

    invoke-direct {p0}, Lcom/android/internal/policy/impl/GlobalActions;->getSettingsAction()Lcom/android/internal/policy/impl/GlobalActions$Action;

    move-result-object v1

    invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z

    goto :goto_3


at

Code:


:cond_7
    const-string v0, "recovery"

    invoke-virtual {v0, v7}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v0

    if-eqz v0, :cond_2

    .line 291
    iget-object v0, p0, Lcom/android/internal/policy/impl/GlobalActions;->mItems:Ljava/util/ArrayList;

    new-instance v1, Lcom/android/internal/policy/impl/GlobalActions$RebootRecovery;

    const/4 v2, 0x0

    invoke-direct {v1, p0, v2}, Lcom/android/internal/policy/impl/GlobalActions$RebootRecovery;-><init>(Lcom/android/internal/policy/impl/GlobalActions;Lcom/android/internal/policy/impl/GlobalActions;)V

    invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z

    goto/16 :goto_3






put the necessary files














Attached Files








File Type: zip framework.zip -
[Click for QR Code]
(14.1 KB)
File Type: zip policy.zip -
[Click for QR Code]
(9.8 KB)










Aucun commentaire:

Enregistrer un commentaire