我发现android的native层使用了class和struct。
例如,MediaPlayer, Stagefrightplayer, Audioplayer,MetaData是类。但是Awesomeplayer和MediaSource是结构。
尽管我读到该类和结构在使用上相似,但我想知道为什么Awesomeplayer将其创建为结构。有什么原因还是只是开发人员的口味?
我发现android的native层使用了class和struct。
例如,MediaPlayer, Stagefrightplayer, Audioplayer,MetaData是类。但是Awesomeplayer和MediaSource是结构。
尽管我读到该类和结构在使用上相似,但我想知道为什么Awesomeplayer将其创建为结构。有什么原因还是只是开发人员的口味?
您尝试提及awesomeplayer 和MediaSource作为 Android API 吗?不,它们不是,它们是从 C++ 转换而来的结构;它们不属于 Android 库!
请看图表stagefright,该库来自 C/C++ 核心。Android 是 linux 核心,可以将 C/C++ utils、libs 带入其中。
参考: http: //pierrchen.blogspot.sg/2012/03/share-with-you-what-have-learned-about.html