首頁 收藏 QQ群
 網(wǎng)站導航

ZNDS智能電視網(wǎng) 推薦當貝市場

TV應用下載 / 資源分享區(qū)

軟件下載 | 游戲 | 討論 | 電視計算器

綜合交流 / 評測 / 活動區(qū)

交流區(qū) | 測硬件 | 網(wǎng)站活動 | Z幣中心

新手入門 / 進階 / 社區(qū)互助

新手 | 你問我答 | 免費刷機救磚 | ROM固件

查看: 11098|回復: 0
上一主題 下一主題
[教程]

#APKBUS#說說關機的那些事(一)

[復制鏈接]
跳轉到指定樓層
樓主
發(fā)表于 2013-8-28 16:28 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
8   前兩天本人的妹妹qq空間留言說讓我做一個定時關機的應用給她用,同時又有同班的女童鞋留言回復說也想要一個,頓時我斗志十足?。∮谑俏胰フ搲?a href="http://ktgpgw.cn/bbs-142-1.html" target="_blank" class="relatedlink">百度了一下。。。   
   直接說結果吧!   
   目前有兩種解決辦法實現(xiàn)關機功能:   
先說第一種,感覺第一種是最簡單實現(xiàn)的,調用系統(tǒng)隱藏的API!   
                                                                  
   
                                                                  Intent intent =  Intent(Intent.ACTION_REQUEST_SHUTDOWN);
                                                                  intent.putExtra(Intent.EXTRA_KEY_CONFIRM, );
                                                                  intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                                                                  startActivity(intent);
   
就是這么幾句話了,但是實際寫一下就會發(fā)現(xiàn),貌似沒有這個權限~!這就是隱藏的權限啦!   
那么怎么使用隱藏API呢?   
使用源碼編譯時生成的全編譯的jar包classes.jar
   
    編譯Android框架源碼后,在源碼路徑下會生成out文件夾,在這個文件夾下的out"target"common"obj"JAVA_LIBRARIES"framework_intermediates"路徑下,會生成全編譯的jar庫classes.jar。你需要做的就是將這個jar庫導入到你的工程中。記住要把這個庫放在前面?。?!   
   
你以為這樣就可以了?   
   
你錯了,這才是第一步,關機還需要一個權限聲明:   
但是加上了這個權限只后就會報錯,說你不是系統(tǒng)軟件,不可以有這個權限!?。『冒?!讓我扮演一下系統(tǒng)軟件吧!(為軟件提升權限)   
   
   
<manifestxmlns:android="http://schemas.android.com/apk/res/android"   
  ……android:sharedUserId="android.uid.system"   
……>   
這樣就OK了!   
下面就剩下最后一步了,什么?你以為這樣就可以了?這樣是不可以直接安裝調試,會報出簽名錯誤!   
   
   
   
雖然不能運行,但是可以生成APK,先生成APK,待用。。。   
得到生成的APK之后用壓縮軟件解壓,把META-INF目錄中的CERT.SF、CERT.RSA 兩個文件刪除。使用android自帶的簽名工具signapk.jar 以及源碼中的platform.x509.pem,platform.pk8 對apk進行重新簽名。在cmd下   
   執(zhí)行:java -jar signapk.jar  platform.x509.pem platform.pk8 old.apk new.apk 執(zhí)行后new.apk即為簽名后的文件。   
   (注:執(zhí)行命令時所有文件這里放在同一目錄下,如果不在同一目錄請修改路徑)。   
  文件platform.x509.pem和platform.pk8我們可以在源碼的 build/target/product/security中找到。signapk.jar 可以編譯build/tools/signapk/ 得到。   
   
然后就可以了?。?!   
但是不要高興的太早,這樣生成的APK只能適用某些系統(tǒng)(與 你是用的相應系統(tǒng)的platform.x509.pem和platform.pk8 文件有關 )我用安卓原生系統(tǒng)的platform.x509.pem和platform.pk8 文件生成APK,在小米上就不好使。ok,第一種方法就先說到這吧!(以上內容均來自百度,本人只是稍作總結,本人才大三,也是第一次發(fā)帖,各位多捧場!)   
   
   
   
   
   

上一篇:第26講:Android中的GPS應用入門.docx
下一篇:滑動效果的標題欄
您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

Archiver|新帖|標簽|軟件|Sitemap|ZNDS智能電視網(wǎng) ( 蘇ICP備2023012627號 )

網(wǎng)絡信息服務信用承諾書 | 增值電信業(yè)務經(jīng)營許可證:蘇B2-20221768 丨 蘇公網(wǎng)安備 32011402011373號

GMT+8, 2024-10-21 03:40 , Processed in 0.059877 second(s), 13 queries , Redis On.

Powered by Discuz!

監(jiān)督舉報:report#znds.com (請將#替換為@)

© 2007-2024 ZNDS.Com

快速回復 返回頂部 返回列表