使用RecycleView和CardView展示已安装应用的包名和图标 ① 获取安装的应用信息 public class ApkInfos { Context mContext;...ApplicationPackageName); viewHolder.imageView.setImageDrawable(drawable); //添加点击事件直接打开已安装的应用
最近遇到一个需求,其中一个功能就是需要获取当前activity的应用包名,当然执行者也可以是别的应用,并不只是本activity所属的应用来回去当前activity。...Android5.0之前是有一个很简单的方法,那就是直接调用activityManager的getRunningTasks函数,我们都知道android通过activity栈来管理众多的activity...,那么我们获取到这个栈,然后取栈顶元素,就是此时前台的activity了,如果要获取对应包名, ActivityManager activityManager = (ActivityManager)context.getApplicationContext...还有一个方法就是获取当前处于前台的进程名, public void getTopActivityPackageName(Context context) { final int PROCESS_STATE_TOP...并且前台Activity所在进程的名称为包名,若在manifest中自定义了其他的进程名,则失效。
测试代码 这段代码的主要功能是使用Timer 定时更新计数。...; mWaitTimer = new Timer(true); mWaitTimer.schedule(mTimerTask,1000,1000); } } 获取栈顶信息...android 5.0 之后官方屏蔽了获取栈顶信息的api,如下的方法在大多数机器上可用: public String getTaskPackname() { ActivityManager.RunningAppProcessInfo...} // Log.e("TAG", "Current App in foreground is: " + currentApp); return currentApp; } 参考链接 Android...计时器Timer用法 Android 监听网络状态+源代码 Android 5.0(包含5.0以下版本) 获取栈顶应用程序包名
最近需要在项目中获取项目的版本号,最笨的方法莫过于硬编码一个版本号,当然我也是这么干的。不过闲下来的时候突发奇想Spring Boot项目中pom.xml定义的版本号能不能通过API获得呢?...于是利用摸鱼的时间研究了这种无聊透顶的东西。 ❝ 目前大多数Spring Boot项目都会打成Jar包,所以什么War包、Ear包的就先不摸索了。...这两种方式都要依赖jar包,有木有不单纯依赖jar包的呢?...从配置文件读取 Maven在构建项目时可以通过资源插件将构建属性即pom.xml中的属性注入到指定的资源文件中,具体操作为: ... <!...spring-boot-version", "time" : { "epochSecond" : 1620664643, "nano" : 591000000 } } 总结 今天介绍了几种从通过API获取项目构建版本信息的方法
最近需要在项目中获取项目的版本号,最笨的方法莫过于硬编码一个版本号,当然我也是这么干的。不过闲下来的时候突发奇想Spring Boot项目中pom.xml定义的版本号能不能通过API获得呢?...于是利用摸鱼的时间研究了这种无聊透顶的东西。 ❝目前大多数Spring Boot项目都会打成Jar包,所以什么War包、Ear包的就先不摸索了。...这两种方式都要依赖jar包,有木有不单纯依赖jar包的呢?...从配置文件读取 Maven在构建项目时可以通过资源插件将构建属性即pom.xml中的属性注入到指定的资源文件中,具体操作为: ... <!...spring-boot-version", "time" : { "epochSecond" : 1620664643, "nano" : 591000000 } } 总结 今天介绍了几种从通过API获取项目构建版本信息的方法
除此之外,还提供了一个PackageManger管理类,它的主要职责是管理应用程序包。 通过它,我们就可以获取应用程序信息。...int labelRes 获得该label在R文件中的值(对应于android:label属性) public String name 获得该节点的name...值 (对应于android:name属性) public String packagename 获得该应用程序的包名 (对应于android:packagename属性...ApplicationInfo类 继承自 PackageItemInfo 说明:获取一个特定引用程序中节点的信息。...功能:返回给定包名的图标,否则返回null public abstract ApplicationInfo getApplicationInfo(String
背景 我们在应用程序的代码中添加业务日志的时候,不论是什么级别的日志,除了我们主动传给 Logger 让它记录的信息外,这行日志是由哪个函数打印的、所在的位置也是非常重要的信息,不然排查问题的时候很有可能就犹如大海捞针...//获取的是 CallerA函数的调用者的调用栈 pc1, file1, lineNo1, ok1 := runtime.Caller(1) } 函数的返回值为调用栈标识符、带路径的完整文件名...、该调用在文件中的行号。...获取调用者的函数名 runtime.Caller 返回值中第一个返回值是一个调用栈标识,通过它我们能拿到调用栈的函数信息 *runtime.Func,再进一步获取到调用者的函数名字,这里面会用到的函数和方法如下...总结 今天介绍了通过 runtime.Caller 回溯调用栈获取调用者的信息的方法,虽然强大,不过频繁获取这个信息也是会对程序性能有影响。
path_above19:/storage/emulated/0/girl.jpg 这里才是获取的图片的真实路径 path = getPath_above19(...* @param uri */ private String getFilePath_below19(Uri uri) { //这里开始的第二部分,获取图片的路径...:低版本的是没问题的,但是sdk>19会获取不到 String[] proj = {MediaStore.Images.Media.DATA}; //好像是android...多媒体数据库的封装接口,具体的看Android文档 Cursor cursor = getContentResolver().query(uri, proj, null, null, null...API Level,比如我的是10, * 因此,AS检查我调用的API后,发现版本号不能向低版本兼容, * 比如我用的“DocumentsContract.isDocumentUri
文章目录 一、Android 逆向中需要经常修改的文件和目录 二、在 root 后的设备中获取 / 目录的 rw 权限后注意事项 1、不要随意执行 wipe 命令 2、不要随意执行 rm 命令 一、Android...逆向中需要经常修改的文件和目录 ---- 系统配置文件 : /default.prop 文件是系统的配置信息 ; 可执行程序存放目录 : 如果需要向 Android 系统中 , 添加一些可执行程序 ,...可以放在 /sbin/ , /system/bin/ , /system/xbin/ 等目录中 , 这些目录中的可执行程序自动存放到环境变量中 ; 动态库存放目录 : Android 中使用的系统 so...B , 将原有的 so 文件重命名为 C , 在 A 动态库中 调用 C 动态库的函数 , 这样就相当于在调用时加了一层拦截 , 可以在此处获取各种参数 ; 配置文件目录 : Android 的配置文件一般都在.../system/etc/ 目录中 ; 二、在 root 后的设备中获取 / 目录的 rw 权限后注意事项 ---- 1、不要随意执行 wipe 命令 wipe 命令不要轻易执行 ; 执行 wipe system
| 插件包管理 ) 【Android 插件化】Hook 插件化框架 ( 通过反射获取 “插件包“ 中的 Element[] dexElements ) ---- 文章目录 Android 插件化系列文章目录...) 中简要介绍了 hook 插件化原理 , 并开始开发插件化管理类 , 本博客中开始加载插件包中的 Element[] dexElements ; Android 中的类加载器 DexClassLoader..., 最终将 " 插件包 " 中读取的 dexElements 合并到 " 宿主 " 应用的 dexElements 中 ; ---- 一、通过反射获取 “插件包” 中的 Element[] dexElements...加载插件包中的字节码 * 2....String apkPath = mBase.getFilesDir().getAbsolutePath() + "plugin.apk"; // 加载插件包后产生的缓存文件路径
image.png 应用层 Android的应用程序主要是用户界面(User Interface)方面的,通常以JAVA程序编写,其中还可以包含各种资源文件(放置在res目录中)JAVA程序及相关资源经过编译后...,将生成一个APK包。...系统库和Android虚拟机 该层分为两部分:系统库和android虚拟机。 系统库 主要为C/C++库,这些库能被Android系统中不同的组件使用。...Linux内核 Android 的核心系统服务依赖于 Linux 2.6 内核,如安全性,内存管理,进程管理, 网络协议栈和驱动模型。 Linux 内核也同时作为硬件和软件栈之间的抽象层。...Android源码版本和代号 代号 CodeName 版本 API级别 馅饼 Pie 9 API 级别 28 奥利奥 Oreo 8.1.0 API 级别 27 奥利奥 Oreo 8.0.0 API 级别
5.0:Donut:棒棒糖到现在android9.0了,刚刚看到9.0了。...就是一些应用软件,如首页,联系人,电话,浏览器等等;应用框架如何理解?...然后我又把Eclipse配置好的删了,之后就搭建不上了,查了结果说已经不推荐了,是看博客的哦 SDK 对于SDK,是。。。 看到图了吧,你懂的,可以试试,对于SDK中我们了解一下吧!...build-tools:各版本 SDK 的编译工具。 extras:扩展开发包。 platforms:各版本的 SDK。 platform-tools:各版本 SDK 的通用工具。...adb devices:查看当前连接的设备。 adb install名>:安装apk程序。 adb uninstall名>:卸载apk程序。
文章目录 一、获取 APK 包流程 二、获取 APK 包完整流程命令行输出 一、获取 APK 包流程 ---- 从应用市场中下载的应用 , 安装完毕后 , 自动删除 ; 如果想要获取安装应用的 APK...包 , 可以使用如下方法进行获取 ; 模拟器 或者 root 过的手机中 , 可以获取 APK 包 ; 这里以 Root 过的 Pixel 2 手机为例 ; 进入 adb shell 命令行 : adb...shell 获取 root 权限 : su 进入 /data/app 目录 : cd /data/app 根据包名查找指定的应用安装目录 : cd kim.hsl.aidl_demo-fRLEnkOknxauSrQcwx2jzw...\=\=/ 拷贝 APK 到外置 SD 卡存储空间 : cp base.apk /sdcard/Pictures/ 拷贝后的 APK 文件 : 二、获取 APK 包完整流程命令行输出 ---- 下面的命令行截图是完整的流程
SDK Android 开发所需的 SDK,下载并解压后,将解压出的整个文件夹复制或者移动到 your sdk 路径/platforms文件夹,然后打开 SDK Manager,打开 Tools(工具)...平台版本 SDK 版本 版本名称 9.0 28 Pie (Android P) 8.1 27 Oreo(Android O)(奥利奥) 8.0 26 Oreo(Android O)(奥利奥) 7.1 25...(Android L)(棒棒糖) 5.0 21 Lollipop(Android L)(棒棒糖) 4.4 19 KITKAT(奇巧巧克力) 4.3 18 JELLY_BEAN_MR2 4.2 4.2.2...各版本和对应 JDK 版本 SDK 版本 JDK 版本 26 - 23 - 22 7 21 7 19 6 18 6 17 6 16 6 15 6 10 6 参考 信息中心 | Android Developers...https://developer.android.google.cn/about/dashboards/ AndroidDevTools - Android开发工具 Android SDK下载 Android
谷歌长期以来一直用甜点为软件版本命名,在最初Alpha和Beta两个版本后,谷歌在后续的版本中均按字母表的顺序,以甜点名称命名,例如Android Cupcake(杯子蛋糕)、Donut(甜甜圈)、Eclair...是开发人员找不到以字母Q开头的甜点了吗? 谷歌谷歌解释,改名是因为部分甜点不在全球各地流通,此外当部分的甜点翻译成当地语言后,就不再以字母表顺序排列了。...Google认为以甜点命名操作系统的做法虽然有趣,但Android作为一款全球性质的操作系统,这样的命名无法让使用者对名称的理解达成一致,也可能有无法区分新版本和老版本的区别。...Google表示,作为一个全球性的操作系统,重要的是这些名称对于世界上每个人来说都是清晰和可靠的。因此,Android的下一个版本将简单地使用版本号并称为Android 10。...不过对于 Android 的用户来说其实少了点记忆负担,我即便是一名 Android 开发,在听到一些甜点的名字后也反应不过来到底是哪个版本,更何况是普通的用户?
Wear平台的初始版本,增加了可穿戴扩展 21 5.0 Lollipop(棒棒糖) 2014-11-12 ART,64位CPU,OpenGL ES 3.1,Material Design,Project...R-Android11 2020-09-09 支持新屏幕,敏感权限只能获取一次,神经网络1.3,聊天气泡 2....Support Library Android 支持库提供了诸多未内置于框架的功能。这些库提供向后兼容版本的新功能、框架中未包含的实用 UI 元素,以及应用可以利用的一系列实用程序。...最后编辑时间: 2018-11-14 包名 库名 gradle最新依赖版本 v4 compat com.android.support:support-compat:28.0.0 v4 core-utils...包名 版本 用途 androidx.appcompat:appcompat: 1.2.0 主要有用以兼容的AppCompatActivity androidx.core:core: 1.3.1 各种兼容库
js的话我就不再多话, 如果,你不懂,那么打开网页戴上耳机关掉王者荣耀,沉浸在学习的海洋中。...chason","js 调用 java"+number); return "chason" ; } 以上这个方法, 一定是要在你刚才addJavascriptInterface 方法中第一个参数类中的方法...一、 Android 4.4 之前 JAVA 调用J S并取到返回值 目前的解决方案是通过java反射机制 在android.webkit包中有个BrowserFrame私有类,该类中有个Native...2.将布局文件中的WebView修改为自定义的WebView 3.使用新的WebView调用方法,执行js方法获取返回值 自定义WebView如下 public String stringByEvaluatingJavaScriptFromString...三、调试 Chrome 远程调试 如果你使用的是 Android 4.4 及其以上版本的 WebView ,那么这将是一个非常有用的功能,具体可以参考这个链接。 到此结束,再会。
我们在项目开发过程中,常常需要查看API Level和sdk版本,来进行一些方法的调用,有时候还需知道对应发布的时间,可以来了解我们最低兼容到的版本是什么时候发布的。...Petit Four 花式小蛋糕 2009-02 Android 1.5 3 Cupcake 纸杯蛋糕 2009-04 Android 1.6 4 Donut 甜甜圈 2009-09 Android...2.0 5 Éclair 松饼 2009-10 Android 2.0.1 6 Éclair 松饼 2009-10 Android 2.1 7 Éclair 松饼 2009-10 Android 2.2...奇巧巧克力 2013-10 Android 5.0-5.0.2 21 Lollipop 棒棒糖 2014-11 Android 5.1 22 Lollipop 棒棒糖 2014-11 Android...Android 8.0 26 Oreo 奥利奥 2017-08 Android 8.1 27 Oreo 奥利奥 2017-12 Android 9 28 P - 2018-05
至于为什么要进行使用量的统计,可参见《Android开发笔记(一百零七)统计分析SDK》,现在我们以友盟统计为例,演示一下如何在Eclipse环境实现多渠道打包的功能。...代码工程导入了友盟统计分析的sdk后,还需在AndroidManifest.xml中定义当前发布包的渠道号,如下所示: android:name="UMENG_CHANNEL..." android:value="1001_0001" /> 上面的1001_0001代表渠道A,如果接下来要打包B渠道的安装包,把android:value改为别的数值如1001_0002,然后导出安装包即可..." > 2、其次修改build.gradle,在android{ ... }包块中补充UMENG_CHANNEL_VALUE的各渠道定义,如下所示:...keystore别名对应的密码 -signedjar 签名后的apk文件名 签名前的apk文件名 keystore别名 zipalign.exe -v 4 签名后的apk文件名 优化后的apk文件名
Google曾表示在今后每年的的I/O大会上,推出Android的新版本,并强调都将有重大改变。今年,Google即将推出Android的7.0版本——Android N。...三星的开发者页面描述中也明确写道“将在Android N中弃用”,因而很自然的假设就是:这些手写笔的功能将在Android 7.0中原生支持。...而且这也并非首例——在棒棒糖推出节电模式和棉花糖推出指纹识别之前也出现过同样的情景。...八、优化MOAR电池 对任何的Android版本而言,电池优化都是一个永恒的话题。棒棒糖版本中Google加入了电池保护模式,在Android M中Google又新增了节电模式。...十、重现暗色主题 短命的暗色主题只在Android M的开发者版本中短暂出现后就消失无踪。
领取专属 10元无门槛券
手把手带您无忧上云