綁定帳號登入

Android 台灣中文網

打印 上一主題 下一主題

[教學] 狀態欄透明化教學

[複製連結] 查看: 2563|回覆: 10|好評: 2
跳轉到指定樓層
樓主
asd8531 | 收聽TA | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
發表於 2013-6-23 15:29

馬上加入Android 台灣中文網,立即免費下載應用遊戲。

您需要 登錄 才可以下載或查看,沒有帳號?註冊

x
本帖最後由 asd8531 於 2013-7-1 14:45 編輯

一、需改動文件:android.policy.jar、systemui.apk
※注:直接用官方固件裡的文件的話需要先deodex!

二、操作步驟:
1、加載框架
apktool if framework-res.apk
apktool if SemcGenericUxpRes.apk

2、解包相關資源
apktool d systemui.apk
apktool d android.policy.jar

3、修改資源

修改android.policy.jar:

打開:android.policy\smali\com\android\internal\policy\i mpl\PhoneWindowManager.smali

藍色 - 搜索找到 紅色 - 刪除 綠色 - 添加

   .line 2552
    iget v0, p0, Lcom/android/internal/policy/impl/PhoneWindowManager;->mSystemTop:I

    iput v0, p1, Landroid/graphics/Rect;->top:I

    .line 2553
    iget v0, p0, Lcom/android/internal/policy/impl/PhoneWindowManager;->mSystemRight:I

    iput v0, p1, Landroid/graphics/Rect;->right:I

   .line 2554
    iget v0, p0, Lcom/android/internal/policy/impl/PhoneWindowManager;->mSystemBottom:I

    iput v0, p1, Landroid/graphics/Rect;->bottom:I

     .line 2555
    iget-object v0, p0, Lcom/android/internal/policy/impl/PhoneWindowManager;->mStatusBar:Landroid/view/WindowManagerPolicy$WindowState;

    if-eqz v0, :cond_0

    iget-object v0, p0, Lcom/android/internal/policy/impl/PhoneWindowManager;->mStatusBar:Landroid/view/WindowManagerPolicy$WindowState;

    invoke-interface {v0}, Landroid/view/WindowManagerPolicy$WindowState;->getSurfaceLayer()I

    move-result v0

    .line 2557
    :goto_0
    return v0

    .line 2556
    :cond_0
    iget-object v0, p0, Lcom/android/internal/policy/impl/PhoneWindowManager;->mNavigationBar:Landroid/view/WindowManagerPolicy$WindowState;

    if-eqz v0, :cond_1

    iget-object v0, p0, Lcom/android/internal/policy/impl/PhoneWindowManager;->mNavigationBar:Landroid/view/WindowManagerPolicy$WindowState;

    invoke-interface {v0}, Landroid/view/WindowManagerPolicy$WindowState;->getSurfaceLayer()I

    move-result v0

    goto :goto_0

    .line 2557
    :cond_1
    const/4 v0, 0x0

    goto :goto_0

    const/4 v0, 0x0

    return v0

.end method

改好後回編譯android.policy.jar

-----------------------------------------------------------------------------------------------------------

反編譯SystemUI.apk,打開\SystemUI\res\values\drawables.xml跟res\layout\navigation_bar.xml

都找到<item type="drawable" name="status_bar_background">#ff000000</item>

把#ff000000改成#5a000000

之後打開SystemUI\smali\com\android\systemui\statusbar\phon e\PhoneStatusBar.smail

找尋"IIIII" 新增綠色的字 刪除紅色的字

const/16 v3, 0x7e3

const v4, 0x4800068

const/4 v5, -0x3

move v2, v1

move v5, v1

invoke-direct/range {v0 .. v5}, Landroid/view/WindowManager$LayoutParams;-><init>(IIIII)V

再來繼續收尋"showNav"或"mPixelFormat:I"

.line 417
.end local v3 #showNav:Z
:cond_1
:goto_2
const/4 v5, -0x3 (or const/4 v9, -0x3 for Z)

iput v13, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mPixelFormat:I

改好之後回編譯SystemUI.apk!

android.policy.jar是替換原本的classes.dex,SyetemUI.apk是替換原本的navigation_bar.xml和classes.dex和resources.arsc,然後權限改好替換手機裡面的,原本的要保留好哦!

透明代碼:
#00000000 - 100%透明
#3F000000 - 75%透明
#7F000000 - 50%透明
#BF000000 - 25%透明

原帖:XDA

多評分給個動力><
「用Android 就來APK.TW」,快來加入粉絲吧!
Android 台灣中文網(APK.TW)

評分

參與人數 5碎鑽 +3 幫助 +5 收起 理由
lcctno + 1
lemon7905 + 1 + 1 非常讚
cchotw + 1 + 1 非常讚
Arachild + 1 老衲來幫這篇文章開光
zxc811224 + 1 + 1 很給力!

查看全部評分

收藏收藏2 分享分享 分享專題
用Android 就來Android 台灣中文網(https://apk.tw)
回覆

使用道具 舉報

沙發
Arachild | 收聽TA | 只看該作者
發表於 2013-6-23 22:49
有沒有圖片阿 XDD  感覺綜合版上的文章

可以自己DIY手機介面了QQ
用Android 就來Android 台灣中文網(https://apk.tw)
回覆 支持 反對

使用道具 舉報

板凳
gonhan | 收聽TA | 只看該作者
發表於 2013-6-25 00:25
請問其他 機型適用嗎?
XS ....

缺少
.end local v3 #showNav:Z 及 (or const/4 v9, -0x3 for Z)
用Android 就來Android 台灣中文網(https://apk.tw)
回覆 支持 反對

使用道具 舉報

地板
 樓主| asd8531 | 收聽TA | 只看該作者
發表於 2013-6-25 09:59

其實妳只要找到
iput v13, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mPixelFormat:I
然後再上面添加虛要加進去的綠色字就可以! 記得綠色字跟下面那行要空格!
用Android 就來Android 台灣中文網(https://apk.tw)
回覆 支持 反對

使用道具 舉報

5
gonhan | 收聽TA | 只看該作者
發表於 2013-6-25 23:47
asd8531 發表於 2013-6-25 09:59
其實妳只要找到
iput v13, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mPixelFormat:I ...

其他機型,測試可以..
用Android 就來Android 台灣中文網(https://apk.tw)
回覆 支持 反對

使用道具 舉報

6
chiou841011 | 收聽TA | 只看該作者
發表於 2013-7-1 12:15
請問一下  哪個步驟是改透明化的步驟??

是這個步驟嗎??     {#ff000000改成#5a000000 }

這個試半透明嗎??    有其他代碼嗎??   
用Android 就來Android 台灣中文網(https://apk.tw)
回覆 支持 反對

使用道具 舉報

7
 樓主| asd8531 | 收聽TA | 只看該作者
發表於 2013-7-1 13:31
chiou841011 發表於 2013-7-1 12:15
請問一下  哪個步驟是改透明化的步驟??

是這個步驟嗎??     {#ff000000改成#5a000000 }

XDA是這樣改的~

沒錯是半透明!

點評

25%的代碼是??  發表於 2013-7-1 14:28
用Android 就來Android 台灣中文網(https://apk.tw)
回覆 支持 反對

使用道具 舉報

8
chiou841011 | 收聽TA | 只看該作者
發表於 2013-7-1 14:27
請問75%的代碼是??
用Android 就來Android 台灣中文網(https://apk.tw)
回覆 支持 反對

使用道具 舉報

9
 樓主| asd8531 | 收聽TA | 只看該作者
發表於 2013-7-1 14:45
chiou841011 發表於 2013-7-1 14:27
請問75%的代碼是??

以更新 自行看!

評分

參與人數 1碎鑽 +1 幫助 +1 收起 理由
chiou841011 + 1 + 1 非常讚

查看全部評分

用Android 就來Android 台灣中文網(https://apk.tw)
回覆 支持 反對

使用道具 舉報

10
roygoys86514 | 收聽TA | 只看該作者
發表於 2013-7-13 17:37
謝謝大大~~~正在測試中
用Android 就來Android 台灣中文網(https://apk.tw)
回覆 支持 反對

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 註冊

本版積分規則