Skip navigation

DSpace

機構典藏 DSpace 系統致力於保存各式數位資料(如:文字、圖片、PDF)並使其易於取用。

點此認識 DSpace
DSpace logo
English
中文
  • 瀏覽論文
    • 校院系所
    • 出版年
    • 作者
    • 標題
    • 關鍵字
  • 搜尋 TDR
  • 授權 Q&A
    • 我的頁面
    • 接受 E-mail 通知
    • 編輯個人資料
  1. NTU Theses and Dissertations Repository
  2. 電機資訊學院
  3. 資訊工程學系
請用此 Handle URI 來引用此文件: http://tdr.lib.ntu.edu.tw/jspui/handle/123456789/78228
完整後設資料紀錄
DC 欄位值語言
dc.contributor.advisor廖世偉(Shih-Wei Liao)
dc.contributor.authorJian-Min Liuen
dc.contributor.author劉建旻zh_TW
dc.date.accessioned2021-07-11T14:46:52Z-
dc.date.available2020-08-25
dc.date.copyright2015-08-25
dc.date.issued2015
dc.date.submitted2015-08-19
dc.identifier.citation[1] Android open source project, 2015. https://source.android.com/.
[2] James Gosling, Bill Joy, Guy Steele, Gilad Bracha, and Alex Buckley. The javaR
language specification – java se 8 edition, 2015. https://docs.oracle.com/javase/
specs/jls/se8/html/index.html.
[3] Tim Lindholm, Frank Yellin, Gilad Bracha, and Alex Buckley. The javaR virtual
machine specification – java se 8 edition, 2015. https://docs.oracle.com/javase/
specs/jvms/se8/html/index.html.
[4] rovo89. Xposed framework, 2015. https://github.com/rovo89/XposedBridge/
wiki/Development-tutorial.
[5] Java native interface specification, 2015. http://docs.oracle.com/javase/8/docs/
technotes/guides/jni/spec/jniTOC.html.
[6] Art and dalvik, 2015. https://source.android.com/devices/tech/dalvik/.
[7] Chris Lattner. The llvm compiler infrastructure, 2015. http://llvm.org/.
[8] Matthew Arnold, Stephen J. Fink, David Grove, Michael Hind, and Peter F. Sweeney.
A survey of adaptive optimization in virtual machines. Preceedings of the IEEE,
93:449–466, 2005.
dc.identifier.urihttp://tdr.lib.ntu.edu.tw/jspui/handle/123456789/78228-
dc.description.abstractAndroid 系統提供一個豐富的應用程式框架給程式設計師, 用來開發許多行動裝置的應用程式以及有趣的遊戲。但由於多樣化的行動裝置與快速的 Android 系統版本變動的緣故, 對應用軟體開法者及智慧型手機製造商來說, 碎片化的問題對他們來說是非常頭痛的。這個問題將會對影響開發者的軟體產品及產生一些移植上的工作。在本篇論文裡, 我們會介紹什麼是 Dynamic Framework, 它是一個對程式設計師來說, 非常便利的用來對系統行為修改的框架, 可以舒緩碎片化的問題與減輕開法者的移植工作。Dynamic Framework 是一個可以不修改任何的 APK
檔案來達到修改系統行為的框架, 只要將 DF File 與使用者自訂的 APK檔案放入系統中, 程式設計師即可完成這個目標。在本篇論文裡, 我們專注於設計置換 method 的方法與其框架的系統架構。
zh_TW
dc.description.abstractAndroid provides an abundant application framework for programmer to develop many useful apps and interesting games in mobile devices.Because of diverse devices and Android version changing fast, fragmentation problem is painful for app developers and smartphone manufacturers. That may affect these software products and there are some porting effort for developer. In this paper, we introduce Dynamic Framework which is a more convenient modification framework for programmer. It can relax this problem and relieve the porting effort. Dynamic Framework is a framework that can dynamically change the behavior of android system without modifying any APKs. With Dynamic Framework, the programmers can modifying the system or app easily with putting DF File and user-defined .apk file into system. We focus on ideas of method replacement and design a new architecture of method replacement.en
dc.description.provenanceMade available in DSpace on 2021-07-11T14:46:52Z (GMT). No. of bitstreams: 1
ntu-104-R02922095-1.pdf: 689661 bytes, checksum: 41d0d4783195f350f6aa05486b89f8ee (MD5)
Previous issue date: 2015
en
dc.description.tableofcontents誌謝 i
摘要 ii
Abstract iii
1 Introduction 1
2 Background 3
2.1 Android ART . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.2 Xposed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.3 Android Framework . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.4 Zygote . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.5 Java Reflection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3 Motivation 5
4 Dynamic Framework 7
4.1 System Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
4.2 DF File Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
5 Approach
10
5.1 Representation of Methods . . . . . . . . . . . . . . . . . . . . . . . . . 10
5.2 Loading Class Process . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
5.3 Proxy Handler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
iv
5.4 Change Oat Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
5.5 Change Art Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
6 Experiments 17
7 Discussion of ART Optimization 19
7.1 Inlining . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
7.2 Prelink . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
7.3 Performance Lost . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
8 Programming Guide 22
9 Issue 24
9.1 Method Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
9.2 Resolving Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
9.3 Constructing vtable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
10 Conclusion 28
Bibliography 29
dc.language.isoen
dc.titleAndroid Dynamic Framework: 在Android Runtime下管理系統行為的平台zh_TW
dc.titleAndroid Dynamic Framework: A System Behavior Management Platform via Android Runtimeen
dc.typeThesis
dc.date.schoolyear103-2
dc.description.degree碩士
dc.contributor.oralexamcommittee徐慰中,梁伯嵩
dc.subject.keyword動態框架,安卓,安卓執行期,方法置換,zh_TW
dc.subject.keywordDynamic Framework,Android,ART,method replacement,Xposed,Java Reflection,JNI,en
dc.relation.page29
dc.rights.note有償授權
dc.date.accepted2015-08-20
dc.contributor.author-college電機資訊學院zh_TW
dc.contributor.author-dept資訊工程學研究所zh_TW
顯示於系所單位:資訊工程學系

文件中的檔案:
檔案 大小格式 
ntu-104-R02922095-1.pdf
  目前未授權公開取用
673.5 kBAdobe PDF
顯示文件簡單紀錄


系統中的文件,除了特別指名其著作權條款之外,均受到著作權保護,並且保留所有的權利。

社群連結
聯絡資訊
10617臺北市大安區羅斯福路四段1號
No.1 Sec.4, Roosevelt Rd., Taipei, Taiwan, R.O.C. 106
Tel: (02)33662353
Email: ntuetds@ntu.edu.tw
意見箱
相關連結
館藏目錄
國內圖書館整合查詢 MetaCat
臺大學術典藏 NTU Scholars
臺大圖書館數位典藏館
本站聲明
© NTU Library All Rights Reserved