当(D-> VLGC)可以检测PD是否连接到了SDP上。
3.2.4.4 Primary Detection, ACA-Dock
Figure 3-9展示了支持识别ACA的PD连接到ACA-DOCK上时Primary Detection的工作方式
3.2.5 Secondary Detection 二次检测
二次检测用来区分DCP还是CDP。PD在检测到VBUS的TSVLD_CON_PWD(Session valid to connect
time for powered up peripheral max=1s)时间内,如果PD还没做好被枚举的准备,则要求PD进行二次检测。
PD做好了被枚举的准备,则可以跳过二次检测,参考Section 3.3.2 Good Battery Algorithm。
PS:什么是做好被枚举的准备? 是指建立了连通,即下游设备已经使能了D+/D-线的1.5K上拉电阻,使数据线
进入了相应的信号模式,参考前面对“connect”和“attach”的解释。
3.2.5.1 Secondary Detection, DCP
Figure 3-11 展示了连接到DCP的PD二次检测的方式
Figure 3-11 Secondary Detection, DCP
二次检测的时候:
PD在D-上使能 VDM_SRC,打开 IDP_SINK
比较D+和 VDAT_REF的电压,因为DCP内部通过RDCP_DAT短接了D+/D-信号线,所以VDM_SRC这个
电压源的电压使得(VDAT_REF < D+ < VDM_SRC)
当PD检测到(VDAT_REF < D+)时,就判断连接到了DCP上。
而后要求PD使能 VDP_SRC 或者通过RDP_UP上拉D+到 VDP_UP,
同Section 3.3.2定义的Good Battery Algorithm VDM_SRC(D- Source Voltage 0.5~0.7V) VDP_SRC(D+ Source Voltage 0.5~0.7V) IDP_SINK
(D+ Sink Current 25~175μA) VDAT_REF(Data Detect Voltage 0.25~0.4V) RDCP_DAT(Dedicated
Charging Port resistance across D+/-max=200Ω) RDP_UP(D+ Pull-up resistance 900~1575 Ω)
VDP_UP(D+ pull-up Voltage 3.0~3.6V)
3.2.5.2 Secondary Detection, CDP
Figure 3-12 展示了连接到CDP的PD二次检测的方法
Figure 3-12 Secondary Detection, CDP
二次检测的时候:
PD在D-上使能 VDM_SRC,打开 IDP_SINK
比较D+和 VDAT_REF的电压,因为CDP内部没有短接D+/D-,所以(VDAT_REF > D+ = GND)
当PD检测到(D+ < VDAT_REF),就判断连接到了CDP上
而后要求PD关闭VDP_SRC 和 VDM_SRC,同Section 3.3.2定义的Good Battery Algorithm,然后PD将汲取
IDEV_CHG的充电电流
3.3 Charger Detection Algorithms
3.3.1 Weak Battery Algorithm 弱电池算法
Figure 3-14 是PD连接弱电池时的充电检测算法的一个例子,当然其它的算法也可以,但是要符合DBP规则
要求PD内部实现如下几种电压的阈值的检测:VOTG_SESS_VLD, VDAT_REF and VLGC。检测的阈值
并不是这些参数的最大或最小值,而是PD内部设计在这些参数范围内的固定值。在左侧的例子中,带有弱电
池的PD检测到 (VBUS > VOTG_SESS_VLD)后,会在D+上使能VDP_SRC。如果(D— > VDAT_REF)或
者ID PIN不是在float状态,PD可以汲取IDEV_CHG大小的电流。否则PD只能汲取IUNIT大小的电流。如图所
示,也可以加入紫色的参数VLGC t作为判断条件,这样可以防止PD从PS2口或其它专用充电器充电
3.3.2 Good Battery Algorithm
Figure 3-15 是带有Good Battery的PD需要遵守的的充电检测算法。
当PD 连接到SDP或充电口时,应该使用Good Battery Algorithm检测算法。对于SDP和Charging Port之外
设备或端口,允许添加额外的检测分支。对于添加额外检测分支,不应该造成D+/D-和ID PIN上Good Battery
Algorithm基础上额外的动作,这些动作会对SDP和Charging Port的检测造成影响。添加的额外分支也可以在
Good Battery Algorithm检测最后步骤之后,这样的branch可以使用D+/D-和ID PIN上的动作作为判断的条件。
但是要考虑到如果连接到DCP上时,要求VBUS有效后,D+要一直保持(D+>VDAT_REF)这种情况。PD一旦检
测到(VBUS>VOTG_SESS_VLD),将启动一个计时器TDCD_TIMEOUT。支持DCD的PD可以使能IDP_SRC并
检测D+ 持续TDCD_DBNC时间在VLGC_LOW 。支持ACA检测的PD可以ID PIN在TDCD_DBNC时间内不在
floating状态。如果在D+或ID PIN的连接被检测到之前,DCD计时器超时,PD将进行Primary Detection。如果
PD检测到ID PIN在非floating的状态超过TDCD_DBNC,则直接进入一种ACA模式
Figure 3-17 是DCD开始检测前Data PIN就已经连接上的时序图 Figure 3-17 DCD Timing, Contact Before Start
Figure 3-18 是没检测到DCD的时序 Figure 3-18 DCD Timing, No Contact
3.4.2 Detection Timing, CDP
Figure 3-19 是CDP的主要检测和二次检测的时序,包含了比较D+和VDAT_REF and VLGC,根据条件使能
VDM_SRC的情况。当PD没连接时,CDP也可以保持使能VDM_SRC。详细参考Section 3.2.4.2
Notes: 1)LS PD的时序和左侧基本相同,不同的地方是LS PD会拉高D-线,而不是D+线。
Figure 3-19 是连接到CDP的PD主要检测和二次检测的时序。PD打开VDP_SRC and IDM_SINK。要求CDP
从(D+ > VDAT_REF)开始的TVDMSRC_EN时间内使能D-线的VDM_SRC。从(D+ > VDAT_REF)后
TVDPSRC_ON开始,PD可以检查D-线的状态,如果(D- > VDAT_REF)(或者选择性的判断D- < VLGC,参
考 3.2.4.1),这是PD判断是连接到了Charging Port上,开始汲取IDEV_CHG大小的电流。为了进行二次检
测,要求PD disable VDP_SRC and IDM_SNK,使能VDM_SRC and IDP_SINK。使能VDM_SRC and
IDP_SINK 时间TVDMSRC_ON后,PD可以检查D+的状态。因为CDP在D+上没有电压源,所以(D+ <
VDAT_REF),可以判断PD连接到了CDP上。如果PD在检测到VBUS时powered up,则要求PD在
TSVLD_CON_PWD内建立连通。CDP会在检测到连通的TCON_IDPSNK_DIS内disable IDP_SINK 。
3.5 Ground Current and Noise Margins 接地电流及噪声容限
在USB2.0 spec. 图7-47中,100mA的电流在USB线缆中的GND line上能产生25mV的压差。这就造成了Host
的GND和device的GND有25mV的压差。GND的电压差降低了信号和充电检测的噪声容限。 PD能从CDP汲取的最大电流值是IDEV_CHG.当PD本地的GND电平大于远端host GND电平达到最大允许值
VGND_OFFSET时,在PD从CDP汲取电流大于ICFG_MAX的时候,要求PD支持LS,FS,HS和Chirp。(即边界条
件下对保证必须功能的要求) 当Host和PD间GND的电压偏置达到最大值VGND_OFFSET max时,要求PD和CDP要有大于USB2.0中标称
的共模的范围。
4. Charging Port and Portable Device Requirements 对充电端口和PD的要求
这一章介绍了如下的要求: CDP、ACA-DOCK、DCP、ACA、PD
4.1 Charging Port Requirements 对充电端口的要求
一下要求适用所有类型的充电端口,包括CDP, ACA-Dock, DCP and ACA
4.1.1 Overshoot 正过冲
充电端口的输出电压在负载电流任一阶段的变化都不能超过VCHG_OVRSHT(充电电流会根据不同的充
电阶段发生变化),在充电端口上电或掉电的时候也不能超过这个值
4.1.2 Maximum Current 最大电流
在任何情况下,充电端口的输出电流都不能超过ICDP的最大值
4.1.3 Detection Renegotiation 重新检测
DS port可以是SDP,CDP或者DCP,并可以在这几种端口之间切换。为了使PD重新启动充电检测流程,
要求DS port: 停止驱动VBUS允许VBUS电压降到 VBUS_LKG之下等待 TVBUS_REAPP 时间从新驱动
VBUS
4.1.4 Shutdown Operation 关断操作
如果PD汲取的电流超过了Charging Port能提供的范围,此时Charging Port可以关断。关断类型包括: 关
断VBUS恒定电流限制反向电流限制
4.2 Charging Downstream Port
如下要求适用于CDP
4.2.1 Required Operating Range 需要的工作范围
CDP在输出电流小于 ICDP min 时,输出电压范围应该保证在VCHG。VBUS上电压值是TVBUS_AVG时
间的平均值。当负载电流大于ICDP min,CDP可以关断。一旦关断,则需要遵循Section 4.1.4的要求。 Figure 4-1是CDP负载曲线的几个例子。负载曲线在VCHG电压范围内要求横穿ICDP min。在电流小于ICDP
min范围内,负载曲线不能横穿VCHG min
Figure 4-1 CDP Required Operating Range
4.2.2 Shutdown Operation 关断操作
如果CDP因为电流过载而关断,当过载条件消失后,CDP应该在TSHTDWN_REC内恢复并输出正常范围
的电压VCHG
4.2.3 Undershoot 负过冲
在负载电流小于ICDP min时,负载电流的任一阶段的变化,CDP的输出电压都应该保持在
VCHG_UNDSHT
4.2.4 Detection Signaling 信号检测
当远端PD没连通到CDP上时,要求CDP实现两种行为方式中的一种。 第一种方式: 在断开连接后的
TCP_VDM_EN内使能VDM_SRC,然后在连接后的TCP_VDM_DIS时间内disable VDM_SRC。使用这种方式
的时候,不要求CDP使能IDP_SINK,或者和D+比较电压值VDAT_REF. 第二种方式: 比较D+电压值和
VDAT_REF and VLGC的大小关系。当(VDAT_REF < D+ < VLGC),CDP使能VDM_SRC。当(D+ <
VDAT_REF)或(D+ > VLGC),CDP disable VDM_SRC.时序参考Section 3.4.2
4.2.5 Connector 连接器
CDP是一个Standard-A的母口,连接到PD
4.3 ACA-Dock
如下的规定适用于ACA-DOCK的US PORT.
4.3.1 Required Operating Range
同CDP
4.3.2 Undershoot 负过冲
同CDP
4.3.3 Detection Signaling 信号检测
当PD连接到ACA-DOCK上时,PD作为host的同时从VBUS汲取电流。这种情况类似于PD连接到ACA,
ACA的Accessory Port连接了一个外设的情况。为了通知PD它将作为host汲取电流,ACA-DOCK和ACA都需要
通过电阻RID_A下拉ID PIN到GND。ACA-DOCK要以 ICDP 给PD供电,但是ACA以 IDCP 给PD供电,并且这
个电流必须共享给PD和 Accessory Port连接的任何设备。为了使PD能区分它连接到了一个ACA-DOCK上,而
不是ACA上,ACA-DOCK应该按如下要求在D-上使能VDM_SRC: 1.如果 D+/- 在Idle J态时间超过
TCP_VDM_EN,ACA-DOCK将使能VDM_SRC 2.在D+/-上信号发生变化的TCP_VDM_DIS时间内,ACA-
DOCK将停止VDM_SRC
4.3.4 Connector 连接器
ACA-DOCK应该有一个Micro-A的公口,用来连接PD的Micro-AB母口
4.4 Dedicated Charging Port DCP
以下内容是对DCP的要求
4.4.1 Required Operating Range 需要的工作范围
当DCP输出的电流小于IDCP min的情况下,输出的电压应该在VCHG定义的范围内。VBUS的电压是在
TVBUS_AVG时间的平均值。当DCP的负载电流小于IDEV_CHG,并且负载电压大于VDCP_SHTDOWN时,
DCP应该保持工作不被关断。当负载电流大于IDEV_CHG,或者负载电压小于VDCP_SHTDOWN时,DCP可
以被关断。关断后,遵循Section 4.1.4的要求。
Figure 4-2 是几个负载曲线的例子。DCP负载曲线要求穿过恒定电流线IDEV_CHG max,或者恒定电压线
VDCP_SHTDWN。DCP不允许在需要的工作范围内关断。
Figure 4-2 DCP Required Operating Range
4.4.2 Undershoot 负过冲
负载电流从IDCP_LOW to IDCP_MID,或者从IDCP_MID to IDCP_HI 任一阶段的变化,DCP的负过冲电压
始终应该保持在VCHG_UNDSHT范围内。在负载阶段从low to mid后,要求DCP在TDCP_LD_STP时间内负
载阶段从mid to hi也要符合这个要求。负过冲的持续时间要在TDCP_UNDSHT定义的范围内。 负载电流的变化如果从IDCP_LOW to IDCP_HI,DCP供给PD的负载电压可以drop TDCP_UNDSHT时间。这个
时间后DCP的输出电压应该在VCHG范围内,负载电流应该小于IDCP min。
4.4.3 Detection Signaling 信号检测
DCP在D+和D-间用RDCP_DAT短接DCP D+/D- PIN上的漏电流应该小于或者等于两个连接到
VDAT_LKG 的RDAT_LKG电阻的漏电流。参考 Figure 3-6.D+/- pins 和DCP GND之间的电容应该在
CDCP_PWR规定的范围内
4.4.4 Connector
一个DCP应该有一个Standard-A的母口,或者有一个Micro-B公口的一体线
4.5 Accessory Charger Adapter
以下是对充电端口连接了DCP或CDP的ACA要求
4.5.1 Required Operating Range 要求的工作范围
对ACA的OTG Port要求的工作范围受以下因素的影响:
(1)充电口上的设备 (DCP or CDP)
(2)从Accessory Port汲取的电流
(3)RACA_CHG_OTG
(4)VACA_OPR ACA OTG
Port能提供给PD的电流的大小取决于Charger Port能提供电流的大小和连接在Accessory Port的设备汲取
的电流的大小。OTG端口能获得的电压值取决于充电端口的电压,从OTG and Accessory Ports汲取的电
流的大小和RACA_CHG_OTG。只有在充电端口的电压在VACA_OPR范围时,才能要求ACA正常工作
4.5.2 Undershoot 负过冲
充电端口连接DCP或CDP的ACA应该遵循和DCP一样负过冲要求。
4.5.3 Detection Signaling 信号检测
如spec中Section 6中描述的,ACA应该把OTG端口的ID PIN下拉到GND,下拉电阻可选值是:RID_GND,
RID_C, RID_B, RID_A, RID_FLOAT ACA中D+/D- PIN应该是从OTG端口直连到the Accessory Port.
4.5.4 Connector
ACA的OTG端口应该是一根Micro-A的一体线
4.6 Portable Device
以下部分是对PD的要求
4.6.1 Allowed Operating Range
PD从充电端口汲取的最大电流不能超过IDEV_CHG。PD不能把充电端口的电压拉低到VDCP_SHTDWN
max以下。Figure 4-3 是PD的正常工作范围。
4.6.2 Detection Signaling
所有的PD都应该实现以下的检测特征:
(1)DCD timer (TDCD_TIMEOUT)
(2)Primary Detection 主要检测,区分是DCP/CDP还是SDP类型的充电设备在Primary Detection时
比较D-和VDAT_REF 的大小 PD可以选择性的实现以下检测特征:
(1)DCD, 使用 IDP_SRC
(2)在主要检测期间比较D-和VLGC的大小
(3)二次检测
(4)ACA 检测
4.6.3 Detection Renegotiation 重新检测
为了再次重新开始充电器的检测流程,允许DS关断并从新使能VBUS上的供电。参考Section 4.1.3. 为了
检测到VBUS的掉电,要求PD在VBUS关断时能对VBUS上的寄存的电荷快速的放电。要求在TVLD_VLKG时间
内使电压低于VBUS_LKG。 当PD连接到充电端口时,允许PD断开并重复数次充电器的检测流程。在断开连
接到从新开始充电器检测流程之间,要求PD最少等待TCP_VDM_EN max 时间。
4.6.4 Connector
能连接到ACA-DOCK或ACA的PD应该有一个的Micro-AB母口
6. Accessory Charger Adapter
6.1 前言
随着移动设备变得越来越小,对外只留一个接口是大势所趋。如果这个仅有的接口是USB接口,那就会面临
一个问题,在PD已经连接其它设备的同时,还需要给设备充电该怎么办。 举个例子,用户在汽车里边,把耳机连
接到了手机上,但此时手机的电量很低了,需要充电,在充电的同时,仍然可以继续使用耳机通话。如果手机只
有一个借口,那么就不可能把耳机和充电器同时连到一个接口上。 另外还有这么一种情况,设想有这么一种移动
设备,只有一个接口,但也可以作为掌上PC。当这样的PD放到ACA-DOCK上时,它可以作为host连接各种各样的
外设,比如hub, keyboard, mouse, printer等等。但是同时也可以被充电。 这章主要就是阐述一种方法,一个USB
端口,可以同时连接充电器和设备。这种方法是用了一种ACA的设备实现。如Figure 6-1。
Figure 6-1 Accessory Charger Adapter
ACA 有如下的三个端口: ? OTG Port ? Accessory Port ? Charger Port OTG Port 有一根 Mircro-A公口的一
体线。只有OTG设备(比如带有Micro-AB母口的设备)能连接到这个OTG Port上。 连接到Accessory Port上的
外设能是用正常的USB信号和OTG设备通信。 Charger Port将ACA连接到一个Charger Port。Charger Port提供
的电量既可以供给OTG设备,也可以供给外设。要求ACA把Charger Port仅仅标识为充电器,因为ACA不支持
OTG Port和Charger Port的USB通信。 Charger Port 仅仅用来供电。同时也要求ACA提供一个指示用来显示什么
时候能给OTG and Accessory Ports供电。 有两种类型的ACA:
(1)Micro ACA
(2)Standard ACA
Micro ACA有一个Micro-AB 母口作为Accessory Port,既能连接A-device也能连接B-device。Standard ACA
有一个Standard-A的母口作为Accessory Port,只能连接B-device。
6.2 Micro ACA
6.2.1 Micro ACA Ports
Figure 6-2 是Micro ACA的端口描述 Figure 6-2 Micro ACA Ports
能连接到Micro ACA的Accessory Port(Micro-AB 母口)的线缆类型包括:
(1)Micro-A to Micro-B
(2)Micro-A to captive
(3)Micro-B to Standard-A
(4)Micro-B to Micro-A
Micro ACA的Charger Port接口类型包括:
(1)Micro-B 母口
(2)Standard-A公口的一体线 (3)连接charger的一体线
6.2.2 Micro ACA Connectivity Options Micro ACA连接方法
Table 6-1 是设备连接到Micro ACA端口的各种组合。
Table 6-1 Micro ACA Connectivity Options
ACA不能通过充电端口进行数据通信。仅仅允许从充电端口充电。当SDP或OTG设备连接到Charger Port
时,不能通过Charger Port从SDP或OTG设备汲取电流。 在OTG device和B-device 都从Charger Port充电的
情况,不必支持SRP,因为VBUS在OTG Port and Accessory Port已经都存在了。 要求OTG device限制从
ACA汲取的电流,因为要求保证VBUS_OTG的电平始终大于VACA_OPR min,汲取电流过大可能将
VBUS_OTG拉低至VACA_OPR min以下。
6.2.3 Micro ACA Architecture Micro ACA结构
Figure 6-3 是Micro ACA的结构
Figure 6-3 Micro ACA Architecture
Accessory Switch控制VBUS_OTG 和 VBUS_ACC之间的电流通断。Charger Switch控制VBUS_CHG 和
VBUS_OTG之间的电流通断。
Adapter Controller有如下的功能:
(1)读ID_ACC pin的状态(grounded or floating)
(2)在ID_OTG pin上使能一种状态, (RID_GND, RID_A, RID_B, RID_C or RID_FLOAT)
(3)使用DP_CHG and DN_CHG pins 检测Charger Port是否连接到了充电器上
(4)读取 VBUS_ACC pin上的电压
(5)控制 Charger 和 Accessory Switches
6.2.4 Micro ACA Modes of Operation Micro ACA的工作模式
Micro ACA的工作模式见Table 6-2, 这个表假设OTG Port连接的总是OTG device。
Table 6-2 Micro ACA Modes of Operation
备注 1) Open是指switch的高阻态,即不导通。 Closed 是指switch低阻态,即导通。 在第5行和第7行,充电器连接到了Micro ACA Charger Port,Accessory Port没连接设备或者连接到
Accessory Port的A-device并没驱动VBUS。 ACA使能ID PIN上的 RID_B 电阻向 OTG device表明ACA可
以对它充电,并允许OTG device发起SRP请求。OTG device不能建立连通(这意味着OTG device要保持
DP_OTG在低电平)。这是因为如果连接到Accessory Port的 A-device如果没有驱动VBUS,根据USB
spec规定,数据线要保持在低电平。 PS: Micro ACA的Accessory Port连接A-device,在什么情况下才能和OTG-Port的B-device建立连通?
参见第3,4行。
第8行,充电器连接到了Micro ACA的Charger Port, Accessory Port上连接了使能VBUS的A-device。
ACA使能ID PIN上的电阻RID_C向OTG Port上的OTG B-device表明ACA可以对它充电,并且可以建立连
通。但是OTG Port的OTG B-device不能发起SRP,因为A-device已经使能了VBUS (PS:这个解释没看明
白,Accessory switch open,怎么发起SRP?答:这里的SRP是指OTG Port上的B-Device对Charger Port
上的充电器发起的).
第6行,充电器连接到了Micro ACA的Charger Port,B-device连接到了Accessory Port。ACA使能ID PIN上
的电阻RID_A向OTG Port上的OTG device表明ACA可以对它充电,并且表示OTG Port上的OTG device作
为host。
6.2.5 Implications of not Supporting Micro ACA Detection 不支持Micro ACA检测的影响
OTG的附录仅仅定义了ID PIN的 floating(悬空) and ground 状态。floating state定义是ID PIN的对地电
阻大于1M,ground state的定义是ID PIN的对地电阻小于10Ω。因为RID_A, RID_B and RID_C的阻值是介于悬
空和接地电状态的阻值之间,所以一个不支持ACA检测的OTG device有可能把ACA的阻值判断为floating。
转载于:https://www.cnblogs.com/zxc2man/p/5610670.html
你可能感兴趣的:(Battery Charging Specification 1.2 中文详解 来源:www.chengxuyuans.com)
精准电源管理:LDO HX75XX系列的技术参数详解
华芯邦
电源管理芯片 科技
在当今快速发展的电子时代,电子设备的性能与稳定性愈发受到重视。而电源管理作为电子设备的核心部分,其重要性不言而喻。华芯邦电源管理芯片其中的低压差线性稳压器LDOHX75XX系列便是在电源管理领域的代表。一、产品概述LDOHX75XX系列是一款高性能低压差线性稳压器,专为满足各种便携式电子设备、电池供电设备以及噪声敏感应用的需求而设计。该系列产品具有超低压差、高稳定性、低功耗等特点,能够在输入电压变
文章去除AI味的指令
wirepuller_king
AI word技巧 人工智能
去AI味指令-1Role:AI文章人性化优化专家Profile:author:wirepullerVersion:5.2.0Language:中文Description:专门优化AI生成文章,使其更接近人类自然写作风格的专家Background:你是一位精通自然语言处理和人类写作风格的专家。你的任务是将AI生成的文章转化为更自然、更有人情味的文章,去除机械化和公式化的痕迹,增加文章的可读性和亲和力
Mysql中的mysqlbinlog_MySQL程序只mysqlbinlog详解
Fly蒋
mysqlbinlog命令详解mysqlbinlog用于处理二进制的日志文件,如果想要查看这些日志文件的文本内容,就需要使用mysqlbinlog工具用法:mysqlbinlog[options]log-files参数详解:-?,--help#显示帮助信息并退出--base64-output=name#binlog输出语句的base64解码分为三类:默认是值auto,仅打印base64编码的需要的
毕业论文代码实验(Python\MATLAB)基于K-means聚类的EMD-BiLSTM-Attention光伏功率预测模型
清风AI
毕业设计代码实现 python lstm 深度学习 神经网络 人工智能 matlab pytorch
一、项目背景1.1光伏功率预测意义在能源结构转型背景下(国家能源局2025规划),光伏发电渗透率已超过18%。但受天气突变、云层遮挡等因素影响,光伏出力具有显著波动性,导致:电网调度难度增加(±15%功率波动)电力市场交易风险提升光储协同控制效率降低1.2技术挑战多尺度特征耦合:分钟级辐照度变化与小时级天气模式共存非线性映射关系:气象因素与发电功率呈高阶非线性关系数据模态差异:数值天气预报(NWP
ROS开发疑难杂症持续更新
流浪的567
ROS 机器人 c++
一、Eigen相关1、fatalerror:Eigen/Dense:没有那个文件或目录4|#include|^~~~~~~~~~~~~1.1、安装Eigensudoapt-getinstalllibeigen3-dev1.2、检查Eigen头文件是否存在于/usr/include/eigen3/或/usr/local/include/目录下ls/usr/include/eigen3/Eigen#应
人脸识别的一些代码
饿了就干饭
CV相关 人脸识别
1、cv2入门函数imread及其相关操作2、(详解)opencv里的cv2.resize改变图片大小Python3、机器学习之人脸识别face_recognition使用4、使用face_recognition进行人脸校准5、简单的人脸识别通用流程示意图(这个看着写的挺好的)6、face_recognition和图像处理中left、top、right、bottom解释7、使用pillow库对图片
什么是CDN?一篇让小白也能看懂的科普博客
网络小白不怕黑
网络科普 网络 CDN 网络科普
目录什么是CDN?CDN的工作原理CDN的核心组成部分CDN的主要作用CDN的应用场景CDN的优势与局限性如何选择CDN服务?总结1.什么是CDN?CDN的全称是ContentDeliveryNetwork,中文翻译为内容分发网络。简单来说,CDN是一个由多个服务器组成的网络系统,这些服务器分布在世界各地,用来帮助用户更快、更稳定地访问网站、视频、图片等内容。举个例子:假设你在北京访问一个位于美国
软件代码证书怎么申请?
william082012
https 服务器 ssl 网络安全 安全 软件工程
随着软件市场的日益繁荣,软件安全问题也日益凸显。为了确保软件的真实性和完整性,防止恶意代码的入侵,代码签名证书应运而生。一、代码签名证书:软件安全的守护者代码签名证书是一种数字证书,用于对软件进行数字签名。这种签名机制确保了软件在开发、分发和安装过程中的完整性和真实性。通过代码签名,用户可以验证软件的来源是否可靠,以及软件在传输过程中是否被篡改。二、申请代码签名证书的必要性代码签名证书在PinTr
详解 SSL(三):SSL 证书该如何选择?
捞起月亮的渔民丁
ssl https 服务器
详解SSL(三):SSL证书该如何选择?在上一篇《详解SSL(二):SSL证书对网站的好处》中,我们知道了在网站部署SSL证书后,不管是对网站本身还是对网站的用户都能够带来许多好处。那么随着HTTPS的普及,市面上也出现了各种不同的SSL证书。并且由于SSL证书的多样性,很多人对于如何选择SSL证书有着很大的困惑。因此,本篇文章将从证书安全级别、域名数量、用户类型这三个方面提供合理性建议。首先,我
一、MyBatis简介:MyBatis历史、MyBatis特性、和其它持久化层技术对比、Mybatis下载依赖包流程
智能硬件控制器信息分析传感器
@[toc]一、MyBatis简介1.1MyBatis历史MyBatis最初是Apache的一个开源项目iBatis,2010年6月这个项目由ApacheSoftwareFoundation迁移到了GoogleCode。随着开发团队转投GoogleCode旗下,iBatis3.x正式更名为MyBatis。代码于2013年11月迁移到Github。iBatis一词来源于“internet”和“aba
Eclipse 快捷键
lsx202406
开发语言
Eclipse快捷键Eclipse是一款功能强大的集成开发环境(IDE),广泛应用于Java开发领域。熟练掌握Eclipse的快捷键可以大大提高开发效率。本文将详细介绍Eclipse中一些常用的快捷键,帮助开发者更快地熟悉和使用Eclipse。1.基础操作1.1打开文件Ctrl+O:快速打开文件Ctrl+Shift+O:查找类或文件1.2保存文件Ctrl+S:保存当前文件1.3运行程序Ctrl+F
详解 SSL:SSL 证书该如何选择?
网络安全(华哥)
计算机 网络安全 网络工程师 ssl 网络协议 网络
我们知道了在网站部署SSL证书后,不管是对网站本身还是对网站的用户都能够带来许多好处。那么随着HTTPS的普及,市面上也出现了各种不同的SSL证书。并且由于SSL证书的多样性,很多人对于如何选择SSL证书有着很大的困惑。因此,本篇文章将从证书安全级别、域名数量、用户类型这三个方面提供合理性建议。首先,我们来了解下SSL证书的类型。目前市场上SSL证书的种类多样,SSL证书可以根据以下三种方式进行分
Stream 流中 flatMap 方法详解
遇见伯灵说
Java 开发语言 java stream流
1.flatMap()到底是啥?flatMap()是Stream里的中间操作,它的作用可以分两步理解:第一步:对流里的每个元素,先**映射(转换)**成一个Stream。第二步:把多个子流拍平成一个大的扁平流。简单记忆:map()是一对一,flatMap()是一对多。️2.基础用法拆解来看个例子:Listlist=List.of("HelloWorld","JavaStream");Listres
隐私保护:数据生命周期管理——从GDPR到加密存储,守护每一比特敏感信息
云计算练习生
网络安全 网络 安全 数据安全 数据生命周期 数据管理
引言:一次“数据泄露”引发的连锁灾难2023年,某知名健康管理平台因未加密存储用户体检报告,导致2200万条记录泄露。攻击者在暗网以每条0.5美元的价格出售,内容包括HIV检测结果、遗传病史等敏感信息。事件直接触发欧盟GDPR(通用数据保护条例)的1.2亿欧元罚款,企业市值蒸发60%。数据是数字时代的“新石油”,而隐私保护是开采过程中的“防爆阀”。本文将系统解析数据生命周期的安全管控,从法律合规到
一文看懂PCB和集成电路的关系
boyueqiu9000
一文看懂PCB和集成电路的关系在学习电子的过程中,我们经常看到印制电路板(PCB)和集成电路(IC),很多人对这两个概念“傻傻分不清楚”。其实,他们并没有那么复杂,今天我们就来理清下PCB和集成电路的区别。什么是PCB?PCB(PrintedCircuitBoard),中文名称为印制电路板,又称印刷线路板,是重要的电子部件,是电子元器件的支撑体,是电子元器件电气连接的载体。由于它是采用电子印刷术制
MongoDB
z小天才b
MongoDB mongodb 数据库
一、MongoDB简介1.1什么是MongoDB?MongoDB是一个基于分布式文件存储的开源NoSQL数据库系统,由C++语言编写,旨在为Web应用提供可扩展的高性能数据存储解决方案。MongoDB将数据存储为一个文档,数据结构由键值对组成,类似于JSON对象,字段值可以包含其他文档、数组及文档数组。1.2MongoDB的核心特性文档型数据库:数据以BSON(BinaryJSON)格式存储灵活的
macos安装python-nodejs_MAC平台基于Python Appium环境搭建过程图解
weixin_39612038
前言最近笔者要为python+appium课程做准备,mac在2019年重新安装了一次系统,这次重新在mac下搭建appium环境,刚好顺带写个文稿给大家分享分享搭建过程。一、环境和所需软件概述1.1目前环境:MacOS(10.15.3)1.2所需软件:jdk-8u91-macosx-x64.dmg(jdk1.8及以上版本应该都可以)android-sdk_r24.4.1-macosx.zip(m
PostgreSQL_数据使用与日数据分享
程序猿与金融与科技
数据库 postgresql
目录前置:1使用1.1获取前复权因子1.2查询股票的纵向数据1.3查询股票的横向数据2日数据分享(截止至:2025-03-21)总结前置:本博文是一个系列。在本人“数据库专栏”-》“PostgreSQL_”开头的博文。本文为该系列最后一篇。1使用1.1获取前复权因子访问优矿官网ticker_list=[]field_list=['secID','tradeDate','accumAdjFactor
PostgreSQL_实例项目总述
程序猿与金融与科技
数据库 postgresql
目录前置:实例项目总述:前置:1最近新入PostgreSQL,打算用PostgreSQL存储股票日数据,以此为实例记录整个PostgreSQL使用过程2所以这次的博文是一个序列,都放在数据库专栏里,以PostgreSQL_打头3PostgreSQL的安装在这个系列里就不赘述了,安装过程简单。(如果有人实在搞不懂怎么安装,可以留言)实例项目总述:项目描述:股票日数据仓库数据来源:优矿1数据表结构设计
C++从入门到实战(六)类和对象(第二部分)C++成员对象及其实例化,对象大小与this详解
珹洺
C++学习之旅 c++ java 开发语言 数据结构 sql 汇编 算法
C++从入门到实战(六)类和对象(第二部分)C++成员对象及其实例化,对象大小与this详解前言一、类和对象里面成员变量,成员函数是什么1.1成员变量1.2成员函数1.3成员变量、成员函数与局部变量的对比二、类的实例化2.1什么是实例化,实例化的概念2.2类的实例化过程1.类的定义2.实例化对象3.初始化对象4.访问对象的成员函数三、对象大小类对象大小计算示例四、this指针4.1this的原理4
(BS ISO 11898-1:2015)CAN_FD 总线协议详解5- MAC子层描述4
s多情公子s
CAN_FD协议详解 信息与通信 网络协议
5.5帧编码帧中的比特流应按照不归零(NRZ,Non-Return-to-Zero)方法进行编码。这意味着在整个比特时间内生成的比特电平是恒定不变的。为了限制可用于同步的最大边沿(即信号波形的上升沿或下降沿)间距,帧的不同部分如起始边界(SOF,StartofFrame)、仲裁字段、控制字段、数据字段以及CRC序列应当采用比特填充的方法进行编码。每当发送器检测到连续五个相同值的比特(包括填充比特)
(BS ISO 11898-1:2015)CAN_FD 总线协议详解1- 基本概念描述
s多情公子s
CAN_FD协议详解 网络协议 信息与通信
目录1.基本概念描述1.1can总线的性质1.2帧1.3总线访问方法1.4信息路由1.4.1帧接受过滤的工作原理:1.5网络灵活性1.6.1广播特性:1.6.2错误检测与处理:1.7远程数据请求1.8错误检测1.9错误信号和恢复时间1.9.1错误信号:1.9.2错误恢复:1.9.3恢复时间:1.10确认应答(ACK)1.10.1ACK的工作原理:1.10.2错误帧(EF):1.11自动重传1.11
Linux系统之cal命令详解
门前灯
linux 运维 服务器 cal
cal命令详解cal是一个用于显示日历的简单工具。默认情况下,它会显示当前月份的日历,但可以通过参数和选项显示特定月份、年份或自定义格式的日历。基本语法cal[options][[[day]month]year]无参数:显示当前月份的日历。单参数:显示指定年份的日历。双参数:显示指定月份和年份的日历。三参数:显示指定日、月和年份的日历,并在终端上高亮显示该日期。常用选项选项描述-1,--one显示
从零到一:Redis Cluster部署配置全流程详解,轻松搞定高可用分布式缓存!
IT成长日记
# 数据库技术解析与应用实践 Redis Cluster redis 缓存 集群
RedisCluster是Redis官方提供的分布式解决方案,它通过数据分片(Sharding)和主从复制(Replication)来实现高可用性和横向扩展。RedisCluster能够在多个节点之间自动分配数据,并且在节点故障时自动进行故障转移,确保系统的高可用性。本文将详细介绍RedisCluster的部署和配置全流程,帮助读者快速搭建一个高可用的Redis集群。1RedisCluster概述
MySQL时间转换
可儿·四系桜
# MySQL mysql 数据库
1.bigint类型的时间戳1.1将bigint转为datetimeFROM_UNIXTIME(时间戳/1000)1.2将bigint转为date方式一:DATE(FROM_UNIXTIME(时间戳/1000))方式二:字符串隐式转换FROM_UNIXTIME(时间戳/1000,'%Y-%m-%d')1.3将bigint转为指定格式的varcharFROM_UNIXTIME(时间戳/1000,'%
C 语 言 --- 三 子 棋
笑口常开xpr
c语言 开发语言
C语言---三子棋代码全貌与功能介绍游戏效果展示游戏代码详解game.htest.cgame.c总结作者简介:曾与你一样迷茫,现以经验助你入门C语言个人主页:@笑口常开xpr的个人主页系列专栏:C启新程✨代码趣语:编程是告诉另一个人你希望计算机做什么的艺术。代码千行,始于坚持,每日敲码,进阶编程之路。gitee链接:gitee在编程的世界里,每一行代码都可能隐藏着无限的可能性。你是否想过,一个小小
Windows 11 24H2 中文版、英文版 (x64、ARM64) 下载 (2025 年 3 月更新)
windows
Windows1124H2中文版、英文版(x64、ARM64)下载(2025年3月更新)Windows11,version24H2EnterpriseArm64x64(updatedMar2025)请访问原文链接:https://sysin.org/blog/windows-11/查看最新版。原创作品,转载请保留出处。作者主页:sysin.org全新Windows体验,让您与热爱的人和事物离得更近
@Autowired 和 @Resource 注解的区别
在努力的韩小豪
spring spring boot java-ee java
前言@Autowired和Resource是Spring中用于依赖注入的注解,但两者在实现机制和使用方式上有显著差异。主要区别1.来源不同@Autowired:由Spring框架提供(org.springframework.beans.factory.annotation),与Spring强耦合。@Resource:由JSR-250规范定义(javax.annotation.Resource),属
Yolo系列之Yolo的基本理解
是十一月末
YOLO python 开发语言 yolo
YOLO的基本理解目录YOLO的基本理解1YOLO1.1概念1.2算法2单、多阶段对比2.1FLOPs和FPS2.2one-stage单阶段2.3two-stage两阶段1YOLO1.1概念YOLO(YouOnlyLookOnce)是一种基于深度学习的目标检测算法,由JosephRedmon等人于2016年提出。它的核心思想是将目标检测问题转化为一个回归问题,通过一个神经网络直接预测目标的类别和位
我要写整个中文互联网界最牛逼的JVM系列教程 | 「JVM与Java体系架构」章节:JVM的生命周期
李阿昀
只要你有心 人人都是JVM精通者 jvm java 架构
这一讲,我们就来好好谈一谈JVM的生命周期。JVM的生命周期大家做了这么久的开发,应该知道很多的结构其实都有其生命周期吧!而关于JVM的生命周期,这里我们则主要讲述它的三个状态,即虚拟机的启动、虚拟机的执行以及虚拟机的退出,这也是一个结构的生命周期最起码应该具备的三个状态——开始、运行、结束。这就像哲学里面讨论的终极问题一样,我是谁?我从哪里来?我将到哪里去?其实,我觉得先提出我是谁这个问题不太合
Js函数返回值
_wy_
js return
一、返回控制与函数结果,语法为:return 表达式;作用: 结束函数执行,返回调用函数,而且把表达式的值作为函数的结果 二、返回控制语法为:return;作用: 结束函数执行,返回调用函数,而且把undefined作为函数的结果 在大多数情况下,为事件处理函数返回false,可以防止默认的事件行为.例如,默认情况下点击一个<a>元素,页面会跳转到该元素href属性
MySQL 的 char 与 varchar
bylijinnan
mysql
今天发现,create table 时,MySQL 4.1有时会把 char 自动转换成 varchar
测试举例:
CREATE TABLE `varcharLessThan4` (
`lastName` varchar(3)
) ;
mysql> desc varcharLessThan4;
+----------+---------+------+-
Quartz——TriggerListener和JobListener
eksliang
TriggerListener JobListener quartz
转载请出自出处:http://eksliang.iteye.com/blog/2208624 一.概述
listener是一个监听器对象,用于监听scheduler中发生的事件,然后执行相应的操作;你可能已经猜到了,TriggerListeners接受与trigger相关的事件,JobListeners接受与jobs相关的事件。
二.JobListener监听器
j
oracle层次查询
18289753290
oracle;层次查询;树查询
.oracle层次查询(connect by)
oracle的emp表中包含了一列mgr指出谁是雇员的经理,由于经理也是雇员,所以经理的信息也存储在emp表中。这样emp表就是一个自引用表,表中的mgr列是一个自引用列,它指向emp表中的empno列,mgr表示一个员工的管理者,
select empno,mgr,ename,sal from e
通过反射把map中的属性赋值到实体类bean对象中
酷的飞上天空
javaee 泛型 类型转换
使用过struts2后感觉最方便的就是这个框架能自动把表单的参数赋值到action里面的对象中
但现在主要使用Spring框架的MVC,虽然也有@ModelAttribute可以使用但是明显感觉不方便。
好吧,那就自己再造一个轮子吧。
原理都知道,就是利用反射进行字段的赋值,下面贴代码
主要类如下:
import java.lang.reflect.Field;
imp
SAP HANA数据存储:传统硬盘的瓶颈问题
蓝儿唯美
HANA
SAPHANA平台有各种各样的应用场景,这也意味着客户的实施方法有许多种选择,关键是如何挑选最适合他们需求的实施方案。
在 《Implementing SAP HANA》这本书中,介绍了SAP平台在现实场景中的运作原理,并给出了实施建议和成功案例供参考。本系列文章节选自《Implementing SAP HANA》,介绍了行存储和列存储的各自特点,以及SAP HANA的数据存储方式如何提升空间压
Java Socket 多线程实现文件传输
随便小屋
java socket
高级操作系统作业,让用Socket实现文件传输,有些代码也是在网上找的,写的不好,如果大家能用就用上。
客户端类:
package edu.logic.client;
import java.io.BufferedInputStream;
import java.io.Buffered
java初学者路径
aijuans
java
学习Java有没有什么捷径?要想学好Java,首先要知道Java的大致分类。自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,这也就是Sun ONE(Open Net Environment)体系。J2SE就是Java2的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;J2EE
APP推广
aoyouzi
APP 推广
一,免费篇
1,APP推荐类网站自主推荐
最美应用、酷安网、DEMO8、木蚂蚁发现频道等,如果产品独特新颖,还能获取最美应用的评测推荐。PS:推荐简单。只要产品有趣好玩,用户会自主分享传播。例如足迹APP在最美应用推荐一次,几天用户暴增将服务器击垮。
2,各大应用商店首发合作
老实盯着排期,多给应用市场官方负责人献殷勤。
3,论坛贴吧推广
百度知道,百度贴吧,猫扑论坛,天涯社区,豆瓣(
JSP转发与重定向
百合不是茶
jsp servlet Java Web jsp转发
在servlet和jsp中我们经常需要请求,这时就需要用到转发和重定向;
转发包括;forward和include
例子;forwrad转发; 将请求装法给reg.html页面
关键代码;
req.getRequestDispatcher("reg.html
web.xml之jsp-config
bijian1013
java web.xml servlet jsp-config
1.作用:主要用于设定JSP页面的相关配置。
2.常见定义:
<jsp-config>
<taglib>
<taglib-uri>URI(定义TLD文件的URI,JSP页面的tablib命令可以经由此URI获取到TLD文件)</tablib-uri>
<taglib-location>
TLD文件所在的位置
JSF2.2 ViewScoped Using CDI
sunjing
CDI JSF 2.2 ViewScoped
JSF 2.0 introduced annotation @ViewScoped; A bean annotated with this scope maintained its state as long as the user stays on the same view(reloads or navigation - no intervening views). One problem w
【分布式数据一致性二】Zookeeper数据读写一致性
bit1129
zookeeper
很多文档说Zookeeper是强一致性保证,事实不然。关于一致性模型请参考http://bit1129.iteye.com/blog/2155336
Zookeeper的数据同步协议
Zookeeper采用称为Quorum Based Protocol的数据同步协议。假如Zookeeper集群有N台Zookeeper服务器(N通常取奇数,3台能够满足数据可靠性同时
Java开发笔记
白糖_
java开发
1、Map<key,value>的remove方法只能识别相同类型的key值
Map<Integer,String> map = new HashMap<Integer,String>();
map.put(1,"a");
map.put(2,"b");
map.put(3,"c"
图片黑色阴影
bozch
图片
.event{ padding:0; width:460px; min-width: 460px; border:0px solid #e4e4e4; height: 350px; min-heig
编程之美-饮料供货-动态规划
bylijinnan
动态规划
import java.util.Arrays;
import java.util.Random;
public class BeverageSupply {
/**
* 编程之美 饮料供货
* 设Opt(V’,i)表示从i到n-1种饮料中,总容量为V’的方案中,满意度之和的最大值。
* 那么递归式就应该是:Opt(V’,i)=max{ k * Hi+Op
ajax大参数(大数据)提交性能分析
chenbowen00
Web Ajax 框架 浏览器 prototype
近期在项目中发现如下一个问题
项目中有个提交现场事件的功能,该功能主要是在web客户端保存现场数据(主要有截屏,终端日志等信息)然后提交到服务器上方便我们分析定位问题。客户在使用该功能的过程中反应点击提交后反应很慢,大概要等10到20秒的时间浏览器才能操作,期间页面不响应事件。
根据客户描述分析了下的代码流程,很简单,主要通过OCX控件截屏,在将前端的日志等文件使用OCX控件打包,在将之转换为
[宇宙与天文]在太空采矿,在太空建造
comsci
我们在太空进行工业活动...但是不太可能把太空工业产品又运回到地面上进行加工,而一般是在哪里开采,就在哪里加工,太空的微重力环境,可能会使我们的工业产品的制造尺度非常巨大....
地球上制造的最大工业机器是超级油轮和航空母舰,再大些就会遇到困难了,但是在空间船坞中,制造的最大工业机器,可能就没
ORACLE中CONSTRAINT的四对属性
daizj
oracle CONSTRAINT
ORACLE中CONSTRAINT的四对属性
summary:在data migrate时,某些表的约束总是困扰着我们,让我们的migratet举步维艰,如何利用约束本身的属性来处理这些问题呢?本文详细介绍了约束的四对属性: Deferrable/not deferrable, Deferred/immediate, enalbe/disable, validate/novalidate,以及如
Gradle入门教程
dengkane
gradle
一、寻找gradle的历程
一开始的时候,我们只有一个工程,所有要用到的jar包都放到工程目录下面,时间长了,工程越来越大,使用到的jar包也越来越多,难以理解jar之间的依赖关系。再后来我们把旧的工程拆分到不同的工程里,靠ide来管理工程之间的依赖关系,各工程下的jar包依赖是杂乱的。一段时间后,我们发现用ide来管理项程很不方便,比如不方便脱离ide自动构建,于是我们写自己的ant脚本。再后
C语言简单循环示例
dcj3sjt126com
c
# include <stdio.h>
int main(void)
{
int i;
int count = 0;
int sum = 0;
float avg;
for (i=1; i<=100; i++)
{
if (i%2==0)
{
count++;
sum += i;
}
}
avg
presentModalViewController 的动画效果
dcj3sjt126com
controller
系统自带(四种效果):
presentModalViewController模态的动画效果设置:
[cpp]
view plain
copy
UIViewController *detailViewController = [[UIViewController al
java 二分查找
shuizhaosi888
二分查找 java二分查找
需求:在排好顺序的一串数字中,找到数字T
一般解法:从左到右扫描数据,其运行花费线性时间O(N)。然而这个算法并没有用到该表已经排序的事实。
/**
*
* @param array
* 顺序数组
* @param t
* 要查找对象
* @return
*/
public stati
Spring Security(07)——缓存UserDetails
234390216
ehcache 缓存 Spring Security
Spring Security提供了一个实现了可以缓存UserDetails的UserDetailsService实现类,CachingUserDetailsService。该类的构造接收一个用于真正加载UserDetails的UserDetailsService实现类。当需要加载UserDetails时,其首先会从缓存中获取,如果缓存中没
Dozer 深层次复制
jayluns
VO maven po
最近在做项目上遇到了一些小问题,因为架构在做设计的时候web前段展示用到了vo层,而在后台进行与数据库层操作的时候用到的是Po层。这样在业务层返回vo到控制层,每一次都需要从po-->转化到vo层,用到BeanUtils.copyProperties(source, target)只能复制简单的属性,因为实体类都配置了hibernate那些关联关系,所以它满足不了现在的需求,但后发现还有个很
CSS规范整理(摘自懒人图库)
a409435341
html UI css 浏览器
刚没事闲着在网上瞎逛,找了一篇CSS规范整理,粗略看了一下后还蛮有一定的道理,并自问是否有这样的规范,这也是初入前端开发的人一个很好的规范吧。
一、文件规范
1、文件均归档至约定的目录中。
具体要求通过豆瓣的CSS规范进行讲解:
所有的CSS分为两大类:通用类和业务类。通用的CSS文件,放在如下目录中:
基本样式库 /css/core
C++动态链接库创建与使用
你不认识的休道人
C++ dll
一、创建动态链接库
1.新建工程test中选择”MFC [dll]”dll类型选择第二项"Regular DLL With MFC shared linked",完成
2.在test.h中添加
extern “C” 返回类型 _declspec(dllexport)函数名(参数列表);
3.在test.cpp中最后写
extern “C” 返回类型 _decls
Android代码混淆之ProGuard
rensanning
ProGuard
Android应用的Java代码,通过反编译apk文件(dex2jar、apktool)很容易得到源代码,所以在release版本的apk中一定要混淆一下一些关键的Java源码。
ProGuard是一个开源的Java代码混淆器(obfuscation)。ADT r8开始它被默认集成到了Android SDK中。
官网:
http://proguard.sourceforge.net/
程序员在编程中遇到的奇葩弱智问题
tomcat_oracle
jquery 编程 ide
现在收集一下:
排名不分先后,按照发言顺序来的。
1、Jquery插件一个通用函数一直报错,尤其是很明显是存在的函数,很有可能就是你没有引入jquery。。。或者版本不对
2、调试半天没变化:不在同一个文件中调试。这个很可怕,我们很多时候会备份好几个项目,改完发现改错了。有个群友说的好: 在汤匙
解决maven-dependency-plugin (goals "copy-dependencies","unpack") is not supported
xp9802
dependency
解决办法:在plugins之前添加如下pluginManagement,二者前后顺序如下:
[html]
view plain
copy
<build>
<pluginManagement