- 博客(2496)
- 资源 (6)
- 收藏
- 关注
转载 关于网络命令 ping 你了解多少
Ping(Packet Internet Groper)是 Windows、Unix 和 Linux系统下的一个命令。ping 也属于一个通信协议,是 TCP/IP 协议的一部分。Ping的运作原理是向目标主机传出一个 ICMP(Internet Control Messages Protocol)即因特网信报控制协议的请求回显数据包,并等待接收回显回应数据包。程序会按时间和成功响应的次数估算丢失数据包率(丢包率)和数据包往返时间(网络时延,Round-trip delay time)。
2023-12-01 17:50:07
26
转载 常用的两个网络协议——TCP和UDP
TCP是基于连接的,而UDP是基于非连接的。,适用于对网络通讯质量要求较高的场景,需要准确无误地传输给对方,比如,传输文件,发送邮件,浏览网页等等,但是可能产生丢包,所以适用于对实时性要求较高但是对少量丢包并没有太大要求的场景。比如:域名查询,语音通话,视频直播等。udp还有一个非常重要的应用场景就是隧道网络,比如:VXLAN。
2023-12-01 17:38:58
20
转载 PING 和 HTTP HEAD 有什么区别 ping http 测试网络可用性
2、ping 通过不同的协议 ICMP。HTTP 是一种不同的协议,由必须在服务器上运行的附加应用程序(Web 服务器)处理(ping 内置于操作系统)。根据网络服务器的重量,相对于 ping 之类的东西,它可能需要更多的时间。HTTP HEAD 仍然是 HTTP:必须在两端之间建立 TCP 连接,并且 HTTP 服务器必须回复您的请求的标头。它显示了大致的延迟,因此,如果您、使用 ping 获得一致的结果,则无法获得比这更低的延迟。与 ping 相比,它的开销要大得多,这就是为什么它需要更长的时间。
2023-12-01 14:32:25
27
转载 HTTP和Ping命令区别是什么
ICMP是TCP/IP协议簇的一个子协议,用于在IP主机、路由器之间传递控制消息。它是用来检查网络是否通畅或网络连接速度的命令。HTTP将客户端浏览器的请求发送到服务器,并将响应的网页内容由服务器返回到客户端浏览器。版权声明:本文为CSDN博主「nawuyao」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/nawuyao/article/details/50389872。
2023-12-01 14:28:00
11
转载 在 Jetpack Compose 中管理 UI 状态
Jetpack Compose 是 Android 中一种声明性 UI 编程框架,允许开发者以更直观和简单的方式构建用户界面。在使用 Jetpack Compose 进行应用程序开发时,UI 状态的管理是一个关键问题,因为它直接影响到用户体验和应用的可维护性。
2023-12-01 13:57:55
10
转载 Jetpack Compose 中的生命周期
在 Android 中,生命周期是指应用组件(如 Activity 或 Fragment)在其生命周期内经历的一系列状态。每个组件都有一组生命周期方法,在不同阶段由 Android 系统调用,允许开发者执行代码并管理应用的行为。了解生命周期对于正确管理资源、处理用户交互和保持良好的用户体验至关重要。
2023-12-01 13:54:37
6
转载 鸿蒙应用开发之打包与上架
当您开发、调试完HarmonyOS应用/元服务,就可以前往AppGallery Connect申请上架,华为审核通过后,用户即可在华为应用市场获取您的HarmonyOS应用/元服务。HarmonyOS会通过数字证书与Profile文件等签名信息来保证应用的完整性,需要上架的HarmonyOS应用/元服务都必须通过签名校验,所以上架前,您需要先完成签名操作。
2023-12-01 10:57:43
13
转载 Android R8 mapping.txt文件解读
信息一样,而且除了第一行 __[:originalstartline[:originalendline]] __有两个值之外,后面的 __[:originalstartline[:originalendline]] __都只有一个值, 则表示这部分代码是__inline__代码。__mapping.txt__文件的格式如上所示:__classline__是类信息,紧接着是__N__个__fieldline__的变量信息,以及__M__个__methodline__的方法信息。
2023-11-30 10:50:52
15
转载 理解混淆的输出
然后混淆就完成了它所有的工作(压缩代码和混淆),它输出了最后一个很重要的文件——所有代码被处理后的完整列表。就是所有的class文件,格式并不是最优的,所以它是个巨大的文件。混淆的第一件事情就是读取配置的所有文件,然后读取所有的java字节码(.class文件)创建class池。最后一点需要注意的是这些文件是构建的重要的一部分,尤其是mapping.txt。混淆下一步需要做的是混淆尽可能多的代码,它会重命名类和成员为无意义的名称如“a”,“b”等等。如果只有类中某些成员被移除,会在下一行输出被移除的成员。
2023-11-30 10:46:45
18
转载 关于一个平平无奇的NPE引申出来的部分proguard知识点的理解
代码总是要被打到dex里按照字节码来执行,Android是基于寄存器的虚拟机。崩溃栈有时候会跟我们看到的不一样,我们参照以下的原则来查看crash,肯定能水到渠成。一般情况,直接查看代码,崩溃栈跟现有代码清晰一致,皆大欢喜。出现崩溃栈跟现有代码对不上,在obfuscate阶段肯定发生了内联,先去usage.txt里查看“嫌疑人代码”有没有被内联掉如果发生内联,去mapping.txt里面查找被内联到了哪里,可能是同一个类,也可能是不同的类。
2023-11-30 10:39:50
61
转载 函数式编程的魔法武器:Kotlin高阶函数和Lambda表达式
高阶函数是指可以接收其他函数作为参数,或者返回一个函数的函数。在许多编程语言中,高阶函数都是一种重要的编程方式,因为它们提供了更高的抽象层次,使得代码更加模块化、易于理解和维护。下面是一个简单的例子,展示了如何在 Kotlin 中定义和使用高阶函数:println(result) // 输出 15定义一个 doOperation 函数,它接受两个整数 x 和 y,以及一个函数 operation。这个函数接受两个整数参数,并返回一个整数。
2023-11-29 10:43:17
23
转载 2023年App从备案到上架(国内各大应用市场)全过程
大家可能心里明白新政下来之后上架会很难,但是到底有多难?心里有底吗?反正我知道。我们之前一直是做海外市场的,今年下半年才开始做国内的应用,我也是很久没有接触国内应用市场了。不上不知道,现在国内上架都这样了!目前各大应用市场陆续推出声明,各种备案截止日期到12月就要到最后期限责令整改不让更新,明年再不整改就面临下架风险。那么如何进行 App 的各种备案大家有头绪吗?如果是一个新的 App 如何从新开始上架需要经历那些步骤,会踩到哪些坑?
2023-11-28 11:16:34
70
原创 Cannot inline bytecode built with JVM target 11 into bytecode that is being built with JVM target 1.
解决Cannot inline bytecode built with JVM target 11 into bytecode that is being built with JVM target 1.8. Please specify proper '-jvm-target' option
2023-11-27 17:38:34
368
转载 Compose中适应性布局的新API
针对大屏幕优化的新组合件。使用新的Material适应性布局,为手机、可折叠设备和平板电脑构建应用程序变得更加简单!市场上各种不同尺寸的Android设备的存在挑战了构建应用程序时对屏幕尺寸的通常假设。开发者不应该假设屏幕是平面的,也不应该假设应用程序启动的屏幕就是当前显示的屏幕。相反,开发者应该根据当前运行的设备来调整应用程序,以便对用户更有用。Android设备有各种尺寸的屏幕。Jetpack Compose简化了动态UI设计和组件复用,为视图和XML布局文件提供了现代化的用户界面开发替代方案。
2023-11-27 14:24:21
17
转载 Android studio 导入svg格式的图片
SVG可以算是目前最最火热的图像文件格式了,它的英文全称为Scalable Vector Graphics,意思为可缩放的矢量图形。它是基于XML(Extensible Markup Language),由World Wide Web Consortium(W3C)联盟进行开发的。严格来说应该是一种开放标准的矢量图形语言,用户可以直接用代码来描绘图像,可以用任何文字处理工具打开SVG图像,通过改变部分代码来使图像具有交互功能,并可以随时插入到HTML中通过浏览器来观看。
2023-11-24 16:56:36
22
转载 Android中的一次性事件
在Google指南和ViewModel中,单次事件反模式在这个问题上是有意见的。简单来说,一次性事件应该是ViewModel中包含的全面UI状态的一部分,并在UI层进行相应处理。将事件分离到它们自己的流中是不推荐的。但我认为这对于绝大多数情况来说有点过分。它还引入了在适当时间处理/重置状态的手动步骤,从而导致潜在的失败点,否则这些问题根本不存在。有时,你只需要一种简单有效且可单元测试的方法。难道这真的需要这么复杂吗?使用这些方法来处理Android中的一次性事件,只是众多方法中的冰山一角。
2023-11-24 13:23:22
15
转载 华为鸿蒙Next,这次真的要遥遥领先了吗
还有一系列配套措施 比如IDE、编译器、独立开发语言ArkTs、独立的UI体系ArkUI、独立的方舟编译器等,确实让人耳目一新,国产移动端操作系统终于来了吗,本文将从以下几个方面来了解:鸿蒙发展史鸿蒙生态透视鸿蒙NEXT对移动开发者的影响。
2023-11-24 12:19:38
124
转载 相关知识总结
Activity 是 Android 中表示图形用户界面(GUI)的单个屏幕,用户可以通过与之交互来执行一些操作,比如拨打电话、查看邮件等。Activity 的生命周期指的是 Activity 可能处于的各种状态,例如 onCreate、onStart、onResume、onPause、onStop、onRestart 和 onDestroy。启动模式指的是当通过 Intent 启动一个新的 Activity 时,新的 Activity 如何被创建和管理。
2023-11-23 18:29:55
17
转载 系统调试工具大全:解密adb、dumpsys、procrank等神器
trace命令是Android系统中一个非常有用的工具,可以用来跟踪Android应用程序的运行情况,包括CPU使用情况、函数调用耗时、线程活动等信息。
2023-11-23 13:48:18
24
转载 体验一下使用 ArkUI 进行 HarmonyOS 开发并与 Compose 简单对比
经过上述的简单了解,我们可以发现,其实不管是 Android 的 Jetpack Compose 还是 Apple 的 SwiftUI 还是刚才说的鸿蒙的 ArtUI,其实核心思想都是差不多的(毕竟都是声明式 UI 的思想),对于我们普通程序员来说写起来也是差不多的感觉,无非是语法和部分风格上略微有区别。作者:equationl链接:https://juejin.cn/post/7291186128363159608来源:稀土掘金著作权归作者所有。
2023-11-23 13:45:19
24
转载 Lifecycle 库新旧版本使用姿势对比
以上就是老的使用方式了,现在已经不推荐使用,@OnLifecycleEvent 注解方式也标记为@Deprecated了,执行结果很简单就不再贴出来了,有兴趣的可以看开头的文章介绍。在旧的实现方式中,LifecycleObserver的最终实现类是ReflectiveGenericLifecycleObserver(见上图),当调用其对应的onStateChanged()方法后,是通过反射找到对应的@OnLifecycleEvent 注解并调用对应的方法的。回顾Lifecycle的用处。
2023-11-23 11:24:14
16
转载 多态响应处理
多态响应允许一个函数或操作与不同类型或数据结构一起工作。换句话说,相同的函数可以与不同类型一起使用,动态适应接收到的数据类型。在编程中,提供灵活性和可重用性是非常重要的。它用于创建可以与各种数据类型或对象类一起工作的通用和可适应的代码块。
2023-11-22 17:42:00
19
转载 推荐在 MVVM 架构中使用 Kotlin Flow 流转换livedata
到这里关于 Kotlin Flow 在 MVVM 当中每层的实践就分析完了,如果使用过 RxJava 的小伙伴们应该会非常熟悉,对于没有使用过 RxJava 的小伙伴们,入门的门槛也是非常低的,强烈建议至少体验一次,体验过之后,我认为你会跟我一样爱上它的。Flow 是协程的扩展,如果要在 Room 和 Retrofit 中使用,Room 和 Retrofit 需要支持协程才可以,在。文章也有提到, 这里我们在深入分析一下,在 ViewModel 中接受 Flow 发送的数据有三种方法,根据实际情况去调用。
2023-11-22 16:22:30
18
转载 使用更为安全的方式收集 Android UI 数据流
在 Android 应用中,通常需要从 UI 层收集 Kotlin 数据流,以便在屏幕上显示数据更新。同时,您也会希望通过收集这些数据流,来避免产生不必要的操作和资源浪费 (包括 CPU 和内存),以及防止在 View 进入后台时泄露数据。本文将会带您学习如何使用 LifecycleOwner.addRepeatingJob、Lifecycle.repeatOnLifecycle 以及 Flow.flowWithLifecycle API 来避免资源的浪费;
2023-11-22 15:26:53
20
转载 Flow : callbackFlow使用心得,避免踩坑
直接创建出来的Flow并不是线程安全的且使用起来也不是很方便,所以使用官方提供的创建Flow的APIcallbackFlow来进行创建。其实就是一个确保肯定会执行的代码块,无论携程被取消或者flow被关闭,都会执行这个代码块,可以在这个代码块里面进行一些资源释放的操作等等,防止内存泄漏。直接抛异常了,下游一个值也没有接收到,这要是在主线程,岂不是程序就崩溃了嘛。这里记录一下callbackFlow使用的心得,踩过的坑就不希望大家在踩一遍了,另外整个架构搭建完成也会开源出来,感兴趣小伙伴的可以关注一波哈。
2023-11-22 14:50:45
11
转载 ViewModel+Flow的绝佳实例和封装
在最近的Android开发中,主流推送慢慢从Java→Kotlin,LifeData→Flow.那里面各有各的好处,也都是为了解决不同应用场景给出不同的方案。但是在使用官方推荐的ViewModel+Flow时,会有很多需要解决的细节,里面也会牵涉到比较多的知识点。所以这个文章就是将自己学习到的东西进行总结.此文章会涉及到的知识点会比较多包括:kotlin扩展函数kotlin高阶函数kotlin内联函数Flow的使用。
2023-11-21 19:50:06
29
转载 LiveData 迁移到 Kotlin Flow详解
从 ViewModel 公开数据,并从 view 中收集数据的最佳方式是:使用 WhileSubscribed 策略,公开一个带有超时的 StateFlow。[示例]使用 repeatOnLifecycle 收集。[示例]任何其他组合,都将使上游 flow 保持活跃状态,从而浪费资源:使用 WhileSubscribed 公开,并在 lifecycleScope.launch/launchWhenX 中收集使用 Lazily/Eagerly 公开,并使用repeatOnLifecycle 收集。
2023-11-21 19:10:42
29
转载 用 Kotlin Flow 在 Android 应用中高效处理并发、并行和异步任务
Kotlin Flow 是在 Android 应用中管理并发、并行和异步任务的多功能和强大工具。通过其简洁的语法和丰富的操作符,它简化了复杂场景的处理,成为开发人员优化应用程序性能和响应性的重要选择。无论您处理并发操作、并行处理、错误处理、背压还是资源管理,Kotlin Flow 都能满足您的需求。用 Kotlin Flow 在 Android 应用中高效处理并发、并行和异步任务。
2023-11-21 19:02:20
32
转载 typeScript安装及TypeScript tsc 不是内部或外部命令,也不是可运行的程序或批处理文件解决办法
如果信任此命令,请改为键入“.\tsc”。tsc : 无法将“tsc”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确,版权声明:本文为CSDN博主「ys_healone」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。3、运行 get-ExecutionPolicy 命令,可看到脚本的执行策略已被更改为 RemoteSigned。然后再去执行 tsc -v 发现还是报错,然后想到可能是环境变量的问题。
2023-11-21 18:51:57
55
转载 windows typescript环境搭建
去官网下载,推荐长期支持版TypeScript 在全局安装后,我们可以在任意位置使用tsc命令,tsc命令负责编译 TypeScript 文件为 JavaScript 文件。
2023-11-21 17:05:50
16
转载 获取本机开启热点、连接 WIFI 时的 IP
可以看到,在名为“ wlan0 ”(或“eth0”或“ap0”)的网络接口中,找到了我所需要的 IP 地址甚至是网络前缀。因此,结论: 找到DisplayName 为 “wlan0”(或“eth0”或“ap0”)的网络接口,再对 “wlan0”(或“eth0”或“ap0”)内的地址做过滤即可。什么原因结果会返回 null 呢?返回 null 是因为找不到 “wlan0”(或“eth0”或“ap0”),找不到“wlan0”(或“eth0”或“ap0”)大概率是因为没有打开 WIFI 或 热点。
2023-11-20 19:16:13
35
转载 Flow 中的背压管理:预防下游消费者过载
当下游消费者无法跟上上游生产者发射数据的速率时,就会发生背压。这可能导致数据积压、内存问题和应用程序崩溃。Kotlin Flow 引入了背压来优雅地解决这个问题。
2023-11-20 18:58:03
16
转载 为什么移动项目架构设计很重要
在构建一个产品之前,我们需要确定一些需求、架构设计和安全问题等。这些因素在组织、创建快速和可扩展的应用程序方面起着重要作用。典型的移动系统设计包括应用程序功能、架构设计以及类似崩溃报告和分析等超出范围的需求。在移动系统设计面试中,面试官希望了解候选人的思维过程、问题解决能力、架构设计解决方案以及候选人面对的边界情况。在开始之前,最好先了解一些基本情况。你应该从简单的问题开始,尽可能多地提问。建议在介绍自己时要简短明了。
2023-11-20 18:55:24
14
转载 APP安装后不在桌面显示图标的应用场景举例和实现方法
最近在为公司做一款车联网的产品,由于公司本身擅长于汽车解码器的研发,所以该产品的诊断功能的实现除了使用目前市面上车联网产品中大量使用的OBD协议外,还会使用一些专车专用协议去实现一些特殊的诊断功能,如升窗降窗、保养归零、读TPMS数据流等。公司的想法是把这些专车专用的诊断当成一种付费服务提供给用户,即用户在免费使用基于OBD协议实现的诊断功能外,若想使用专车专用协议实现的某个特殊功能则需要按每个功能多少钱的形式付费(本人不太赞成靠这种方式赚钱,觉得还是免费的好)。
2023-11-20 13:16:59
22
ormlite-4.48
2014-11-29
jdk-6u45-linux-x64.part2
2013-07-31
jdk-6u45-linux-x64.part1
2013-07-31
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人