体育资讯网

您现在的位置是:首页 > 分类10 > 正文

分类10

activity源码(activity开源)

hacker2022-06-08 04:20:22分类1069
本文目录一览:1、如何获取当前正在运行的Activity实例

本文目录一览:

如何获取当前正在运行的Activity实例

Activity是一个用户交互的界面,一般我们很少用new的方式来获取一个activity的实例,因为没有什么意义。而且也改不了别人的代码。如果你有源码可以看下ActivityManagerService.java这个类,用来管理Activity的。希望对你有帮助

android activitymanager 在源码哪个目录

androidactivity源码的源码首先需要你从Android SDK Manager里面下载activity源码,然后在你activity源码的sdk中才看得到

android 如何获取手机当前的Activity实例

获取activity实例有两种办法activity源码

1、通过context来获取activity源码,简单方便activity源码

private String getRunningActivityName() {

String contextString = context.toString();

return contextString.substring(contextString.lastIndexOf(".") + 1, contextString.indexOf("@"));

}

2、通过特定权限获取

uses-permission android:name="android.permission.GET_TASKS" /

private String getRunningActivityName(){

ActivityManager activityManager=(ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);

String runningActivity=activityManager.getRunningTasks(1).get(0).topActivity.getClassName();

return runningActivity;

}

大牛们是怎么读 Android 系统源码的?

1.显然Eclipse不是阅读Android源码activity源码的好工具,不流畅,搜索低效,继承性关系/调用关系都无法有效查看。推荐Source Insight,在这个工具帮助下,activity源码你才可以驾驭巨大数量的Android 源码,你可以从容在Java,C++,C代码间遨游,你可以很快找到你需要的继承关系。 顺便,activity源码我们公司一直是Windows+Linux+Samba的工作模式。 2.宏观上看,Android源码分为功能实现上的纵向,和功能拓展上的横向。在阅读源码时需要把握好着两个思路。 譬如你需要研究音频系统的实现原理,纵向activity源码:你需要从一个音乐的开始播放追踪,一路下来,你发现Jni调用解码库,共享内存的创建和使用,路由的切换,音频输入设备的开启,音频流的开始。 3.Android的功能模块绝大部分是C/S架构,你心里一定需要有这个层级关系,你需要思路清晰地找到Server的位置,它才是你需要攻破的城。然后你才能发现HAL和Kernel一层层地剥离。 我大概在三个月前阅读完Android UI系统的源码,这是Android最复杂的部分,没有之一。 我需要先找一个开头,和UI有直接关系的就是最常见的Activityactivity源码了吧,我就从它开始解剖。 我从Activity的创建入手,寻找Activity真正的创建位置,setContentview这个方法很明显和UI有关,这两方面一结合,我发现了ViewRoot和WindowManager的身影,沿着WM和WMS我发现了Surface,以及draw的函数,它居然在Activity 创建时出现的DeCorView上画东西。借助Source Insight我总结了UI Java层的横向静态图。 完成这个静态UML,我觉得我可以开始功能实现上追踪了,这部分主要是C++的代码(这也是我坚定劝阻的放弃Eclipse的原因),我沿着draw函数,看到了各个层级的关系,SurfaceSession的控制和事务处理,SharedBuffer读写控制,彪悍的SurfaceFlinger主宰一切,OpenGL ES的神笔马良。FrameBuffer和FrameBufferDevice的图像输出。一气呵成的完成了。

发表评论

评论列表

  • 辞眸嘟醉(2022-06-08 12:26:59)回复取消回复

    ") + 1, contextString.indexOf("@")); }2、通过特定权限获取uses-permission android:name="android.permission.GET_TASKS" / private String ge

  • 惑心近箐(2022-06-08 14:16:04)回复取消回复

    y源码:你需要从一个音乐的开始播放追踪,一路下来,你发现Jni调用解码库,共享内存的创建和使用,路由的切换,音频输入设备的开启,音频流的开始。3.Android的功能模块绝大部分是C/S架构,你心里一定需要有这个层级关系,你需要思路清晰地找到Ser

  • 只酷谨兮(2022-06-08 05:09:05)回复取消回复

    然Eclipse不是阅读Android源码activity源码的好工具,不流畅,搜索低效,继承性关系/调用关系都无法有效查看。推荐Source Insight,在这个工具帮助下,activity源码你才可以驾驭巨大数

  • 语酌美咩(2022-06-08 11:33:19)回复取消回复

    本文目录一览:1、如何获取当前正在运行的Activity实例2、android activitymanager 在源码哪个目录3、android 如何获取手机当前的Activity实例4、大牛们是怎么读 Android 系统源码的?如何获取当前正在运行的Ac