基于Objective-C运行时系统的动态加载技术
Dynamic Loading Technique Runtime System Based On Objective-C

作者: 夏 添 * , 李政志 , 薛鹏飞 :四川大学计算机学院,四川 成都;

关键词: 动态加载应用更新更新移动互联网Dynamic Loading App Update Update Mobile Internet

摘要:
21世纪,移动互联网飞跃式的发展,全球互联网用户数量急速上升。为了满足不同用户在不同使用场景下的需求,移动应用不断推陈出新,在其不断完善的同时,人们对移动应用也产生了依赖性。所以,为了适应市场不断变化的需求和使用场景,各类服务提供商不得不快速的迭代产品。反之,由于产品的过于快速的迭代,使用户需要不断的更新和下载应用,造成用户体验较差。本文通过对Objective-C加载Class的机制的研究,采用包bundle机制在iOS和OS X平台上实现了动态加载。从而实现了让用户不用重新安装APK就实现应用升级更新功能。

Abstract: From the beginning of the 21st century, with the rapid development of mobile Internet, the num-ber of global Internet users increased rapidly. In order to meet the needs of different users in different scenarios, mobile applications continue to emerge; while during its continuous improvement, people also have a dependence on mobile applications. So, in order to adapt to the ever- changing market demand and the use of scenarios, various service providers have to quickly iterate products. Conversely, because the product is too fast iterated, users need to constantly update and download applications, resulting in poor user experience. In this paper, we put forward a feasible solution on iOS and OS X platform by studying the mechanism of Objective-C loading Class, thus achieving the function that users do not have to reinstall APK to upgrade the application.

文章引用: 夏 添 , 李政志 , 薛鹏飞 (2017) 基于Objective-C运行时系统的动态加载技术。 计算机科学与应用, 7, 192-198. doi: 10.12677/CSA.2017.73024

参考文献

[1] 吴吉义, 李文娟, 黄剑平, 等. 移动互联网研究综述[J]. 中国科学: 信息科学, 2015, 45(1): 45-69.

[2] Feng, Q.-C., Wen, Q.-Y. and Fan, Y.-J. (2011) A Systemic Code-Protecting Methodology for the Dex File on Android Platform. IEEE International Conference on Intelligent Computing and Intelligent Systems (ICIS), Vol. 2, IEEE Beijing Section, China, Guangdong University of Technology, China, 4.

[3] 曹森, 苏贵斌. 软件开发中的设计原则[J]. 软件导刊, 2012(1).

[4] 黄金国, 罗震. 手机应用程序开发架构的研究[J]. 计算机工程与科学, 2010(11).

[5] Zhang, X.L., Breitinger, F. and Baggil, I. (2016) Rapid Android Parser for Investigating DEX Files (RAPID). Digital Investigation, 17, 28-39.

[6] 张峰, 李基亮. 校园私有云存储方案的探索[J]. 华东师范大学学报(自然科学版), 2015(B03): 139-145.

[7] Phillips, B. and Hardy, B. (2014) Android Programming: The Big Nerd Ranch Guide. Big Nerd Ranch.

[8] 詹新林. 基于架构的软件设计方法[D]: [硕士学位论文]. 上海: 上海师范大学, 2009.

[9] 王良, 王伟平, 孟丹. FVS k-匿名: 一种基于k-匿名的隐私保护方法[J]. 高技术通讯, 2015(3): 228-233.

[10] Weiss, M.A. (2015) Data Structures and Algorithm Analysis in Java: International Edition, 3/E. Journal of the American Chemical Society, 130, 2156-2157.

[11] Horstmann, C.S. and Cormell, G. (2015) Core Java Volume I: Fundamentals. 9th Edition, by Cay S. Horstmann and Gary Cornell. ACM Sigsoft Software Engineering Notes, 38, 33.

[12] Goetz, B., Peierls, T., Bloch, J. and Bowbeer, J. (2016) Java Concurrency in Practice. China Machine Press, Addison-Wesley, 1171-1177.

分享
Top