科技新闻

android 常用的intent action整理

天大地大妈咪最大 提交于 2020-03-06 21:59:09
来源:优亿论坛 Android 基本的设计理念是鼓励减少组件间的耦合,因此Android提供了Intent (意图) ,Intent提供了一种通用的消息系统,它允许在你的应用程序与其它的应用程序间传递Intent来执行动作和产生事件。Intent作为联系各 Activity之间的纽带,其作用并不仅仅只限于简单的数据传递。通过其自带的属性,其实可以方便的完成很多较为复杂的操作。例如直接调用拨号功能、处 理接收短信,诸如此类,都可以通过设置Intent属性来完成。 Intent主要有以下四个重要属性,它们分别为: Action:Action属性的值为一个字符串,它代表了系统中已经定义了一系列常用的动作。通过setAction()方法或在清单文件 AndroidManifest.xml中设置。标识Activity为一个程序开始的示例代码(AndroidManifest.xml进行配置)如 下:<span style="font-size:16px;"><intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </span> 复制代码Data

SpringCloud - 全家桶

末鹿安然 提交于 2020-03-06 18:10:45
先导篇:SpringCloud介绍篇 第一篇:注册中心Eureka 第二篇:服务提供与Rest+Ribbon调用 第三篇:服务提供与Feign调用 第四篇:熔断器Hystrix(断路器) 第五篇:熔断监控Hystrix Dashboard和Turbine 第六篇:配置中心(Spring Cloud Config) 第七篇:高可用配置中心(Spring Cloud Config) 第七篇(续):Apollo配置中心 第八篇:消息总线(Spring Cloud Bus) 第九篇:路由网管(Zuul) 第十篇:服务链路追踪(Spring Cloud Sleuth) 来源: https://www.cnblogs.com/niudaben/p/12420892.html

[RK1108][Linux3.1]应用笔记 - 队列的实现

独自空忆成欢 提交于 2020-03-06 17:22:38
平台 内核版本 RK1108 Linux3.1 文章目录 队列结构体 操作函数: 在 状态机 这篇文章中,异步消息的收发是通过队列实现,下面我们看下队列的实现: 队列结构体 typedef struct _Queue { struct _QueuePriv * priv ; void ( * post ) ( struct _Queue * , void * data ) ; int ( * get ) ( struct _Queue * , void * data ) ; void ( * setDataSize ) ( struct _Queue * , int size ) ; void ( * destroy ) ( struct _Queue * This ) ; } Queue ; 其中 _QueuePriv 定义如下: # define MAX_COMMAND_QUEUE_SIZE 32 typedef struct _QueuePriv { char name [ 32 ] ; QueueType type ; unsigned int size ; int queue ; void * buf [ MAX_COMMAND_QUEUE_SIZE ] ; sem_t * sem ; //信号量 int current_length ; // 当前fifo已存储的长度

企业降薪,裁员。疫情下的软件开发外包业务出路在哪?

白昼怎懂夜的黑 提交于 2020-03-06 15:04:45
疫情凶猛,业务停滞,好消息是华为又有新任务在开源众包上发布出来了! 本次众包的任务是为 基于鲲鹏处理器图像处理滤波器优化 https://zb.oschina.net/project/detail.html?id=18581455 基于鲲鹏平台ISAL技术合作需求 https://zb.oschina.net/project/detail.html?id=14581428 需求明确、文档规范,加上开源众包项目运营团队的小伙伴一再确认,此项目为长期稳定的合作,合作之后订单保障性很强。 快来试试吧! 来源: oschina 链接: https://my.oschina.net/osczb/blog/3189041

tcpdump抓取HTTP包

你说的曾经没有我的故事 提交于 2020-03-06 14:17:25
tcpdump -XvvennSs 0 -i eth0 tcp[20:2]=0x4745 or tcp[20:2]=0x4854 0x4745 为"GET"前两个字母"GE" 0x4854 为"HTTP"前两个字母"HT" 说明: 通常情况下:一个正常的TCP连接,都会有三个阶段:1、TCP三次握手;2、数据传送;3、TCP四次挥手 里面的几个概念: SYN: (同步序列编号,Synchronize Sequence Numbers) ACK: (确认编号,Acknowledgement Number) FIN: (结束标志,FINish) TCP三次握手(创建 OPEN) 客户端发起一个和服务创建TCP链接的请求,这里是SYN(J) 服务端接受到客户端的创建请求后,返回两个信息: SYN(K) + ACK(J+1) 客户端在接受到服务端的ACK信息校验成功后(J与J+1),返回一个信息:ACK(K+1) 服务端这时接受到客户端的ACK信息校验成功后(K与K+1), 不再返回信息,后面进入数据通讯阶段 数据通讯 客户端/服务端 read/write数据包 TCP四次握手(关闭 finish) 客户端发起关闭请求,发送一个信息:FIN(M) 服务端接受到信息后,首先返回ACK(M+1),表明自己已经收到消息。 服务端在准备好关闭之前,最后发送给客户端一个 FIN(N)消息

Python-粘包、文件上传(ftp)

邮差的信 提交于 2020-03-06 11:57:11
粘包现象 当多条信息发送时接受变成了一条或者出现接受不准确的情况 粘包现象会发生在发送端: 两条消息间隔时间短,长度短,就会把两条消息在发送之前就拼在一起 节省每一次发送消息回复的网络速度 粘包现象会发生在接收端: 多条消息发送到缓存端,但没有被即使接受,或者接受的长度不足一次发送的长度 数据与数据之间没有边界 本质:发送的每一条数据之间没有边界 struct 能够把一个任意大小的数据转换成固定的4个字节 import structret = struct.pack('i', 1249519)print(ret) # b'\xef\x10\x13\x00'​ret = struct.unpack('i', b'\xef\x10\x13\x00')rett1 = struct.unpack('i', b'\xef\x10\x13\x00')[0]print(ret) # (1249519,)print(ret1) # 1249519 文件上传(ftp) 服务端: import socketimport structimport osimport jsonimport sysREMOTE_DIR = os.path.join(os.path.dirname(_file_), 'remote')​def myrecv(conn): num_bytes = conn.recv(4) msg

2020 美赛(MCM)C题翻译+数据分析

懵懂的女人 提交于 2020-03-06 11:31:28
翻译 问题C:数据的财富 在其创建的在线市场中,亚马逊为客户提供了对购买进行评分和评价的机会。 个人评级-称为“星级”-使购买者可以使用1( 低评级,低满意度 )到5( 高评级,高满意度 )的等级来表示他们对产品的满意度。 此外,客户可以提交基于文本的消息(称为“ 评论 ”),以表达有关产品的更多意见和信息。 其他客户可以在这些评论中提交有帮助或无帮助的评分(称为“ 帮助评分 ”),以协助他们自己的产品购买决策。 公司使用这些数据来深入了解其参与的市场,参与的时间以及产品设计功能选择的潜在成功。 阳光公司计划在在线市场上推出和销售三种新产品:微波炉,婴儿奶嘴和吹风机。 他们已聘请您的团队作为顾问,以识别过去客户提供的与其他竞争产品相关的评分和评论的关键模式,关系,度量和参数,以: 1)告知其在线销售策略; 2)确定潜在的重要设计特征,以提高产品的吸引力 。 Sunshine Company过去曾使用数据为销售策略提供信息,但他们以前从未使用过这种特殊的组合和数据类型。 Sunshine Company特别感兴趣的是这些数据中的基于 时间 的模式,以及它们是否以有助于该公司制造成功产品的方式进行交互。 为了帮助您,Sunshine的数据中心为您提供了该项目的三个数据文件:hair_dryer.tsv,microwave.tsv和pacifier.tsv。

RabbitMQ 资源整理

戏子无情 提交于 2020-03-06 11:09:30
参考 Windows下RabbitMQ安装及配置 消息中间件的使用场景 RabbitMQ教程 记录 消息的确认模式 消费者从队列中获取消息,服务端如何知道消息已经被消费呢? 模式1:自动确认 只要消息从队列中获取,无论消费者获取到消息后是否成功消息,都认为是消息已经成功消费。 模式2:手动确认 消费者从队列中获取消息后,服务器会将该消息标记为不可用状态,等待消费者的反馈,如果消费者一直没有反馈,那么该消息将一直处于不可用状态。 手动模式: 自动模式: 来源: CSDN 作者: chrislin9 链接: https://blog.csdn.net/qq_31964019/article/details/104689760

详解RabbitMQ安装过程

不羁的心 提交于 2020-03-06 11:01:31
场景 消息队列已成为分布式系统必要组件,在很多场景下均有广泛应用,通过消息队列可将微服务解耦,拓展了架构思路和可行方案。 常用的消息队列很多,SpringCloud默认支持的有RabbitMQ及Kafka,今天介绍下RabbitMQ的安装过程。 安装Erlang RabbitMQ是使用Erlang开发的,所以需要先安装Erlang,打开网页: https://www.erlang.org/downloads ,选择windows版本下载即可。 安装过程乏善可陈,一直下一步就可以了,此处不再截图。当然兄弟你要想改下安装位置还是可以的哈哈。 安装完毕后配置下环境变量 ERLANG_HOME配置为安装目录:`D:\develop\erl10.6 PATH追加 ;%ERLANG_HOME%\bin 最后,命令行输入erl验证是否安装成功,如下图表示成功: 安装RabbitMQ 打开网页 http://www.rabbitmq.com/download.html ,选择windows版本下载 下载后直接下一步下一步安装即可。 启动 从命令行选择 RabbitMQ Command Promt ,启动命令行管理工具。 输入命令 rabbitmq-plugins enable rabbitmq_management 即可启动RabbitMQ如下图: 使用 在浏览器地址栏输入 http://127

Ubuntu强制卸载VMware-player

放肆的年华 提交于 2020-03-06 10:39:37
有时候安装了vmwar-player,想再安装vmware-workstation,却提示一些古怪的消息(现在忘记具体是什么了)。只能先卸载再安装 首先你可以尝试常规卸载: Shell代码 sudo vmware-installer -u vmware-player 既然你到了这里,通常是无论怎样都卸载不了的 其实所谓的强制卸载就是将所有的vmware文件全部删除, 你可能有你自己的想法,下面是我的做法 Shell代码 locate update locate vmware-player 然后删除所找到的文件! 有时候安装了vmwar-player,想再安装vmware-workstation,却提示一些古怪的消息(现在忘记具体是什么了)。只能先卸载再安装 首先你可以尝试常规卸载: Shell代码 sudo vmware-installer -u vmware-player 既然你到了这里,通常是无论怎样都卸载不了的 其实所谓的强制卸载就是将所有的vmware文件全部删除, 你可能有你自己的想法,下面是我的做法 Shell代码 locate update locate vmware-player 然后删除所找到的文件! 来源: https://www.cnblogs.com/tuobei/p/9324618.html