中国之声《糖尿病自我健康管理》许樟荣 庄丽 音频打包下载

前段时间家人体检发现血糖偏高已经到了糖尿病的边缘.
上年纪的人容易因为对疾病的认识不足导致过份害怕或者不重视疾病小病拖成大病.
在查了一些资料之后发现糖尿病比中学生物书中胰岛素/肝糖原/肌糖原要复杂的多. 想对上年纪的人讲清这些概念更是难上加难.

播客里搜到许樟荣教授在“中国之声”广播中的系列讲座做得很好.
从国内的糖尿病现状到高血糖的长期危害再到如何自我管理最终成为糖尿病的”主人”.
解放军306医院专家的名头正好符合家长对权威的定义.
配合 糖尿病自我健康管理——《中国之声》对话录 实体书一起效果更佳.

音频是从 Podcast 养生大讲堂 中国广播Radio.cn 下载整理而来, 顺序可能不一定对, 也可能有遗漏.

版权归 “中国之声/中国广播” 所有, 如有侵权请联系我删除.
祝你和你的家人健康.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
01既熟悉又陌生的糖尿病.mp3
02糖尿病的健康危险因素.mp3
03糖尿病前期与生活方式调整.mp3
04糖尿病高危人群与早期症状.mp3
05糖尿病的诊断标准.mp3
06低血糖、血糖波动和持续高血糖的危害.mp3
07糖尿病的治疗目标.mp3
08糖尿病的治疗方法.mp3
09糖尿病的治疗捷径.mp3
10糖尿病的合理用药 上.mp3
11糖尿病的合理用药 下.mp3
12糖尿病胰岛素的使用.mp3
13糖尿病患者应为自己的合理用药做什么.mp3
14糖尿病口服药物和胰岛素的基本常识.mp3
15糖尿病患者的血糖监测.mp3
16糖尿病的综合检测.mp3
17糖尿病的苏木杰现象和黎明现象.mp3
18糖尿病并发症的监测和糖尿病足病.mp3
19糖尿病心脑血管并发症.mp3
20糖尿病肾病眼病并发症.mp3
21糖尿病并发感染.mp3
22糖尿病的饮食管理.mp3
23糖尿病的合理运动.mp3
24糖尿病自我健康管理的诊断环节.mp3
25糖尿病自我健康管理的治疗环节.mp3
26糖尿病患者的心理因素调整与医患关系.mp3
27做糖尿病的主人.mp3
28如何做糖尿病的主人.mp3
29糖尿病的自我健康管理实录.mp3
30糖尿病的运动治疗经.mp3

Read More

水星 Mercury MIPC251C-4 网络摄像头 ONVIF 与 PTZ 云台控制

概况

最近在 什么值得买 上发现一款水星的网络摄像头, 除了支持云台/夜视功能之外, 还标明支持 onvif 协议. 所以想着买来接入到 HomeAssistat 作为监控使用.
可到手之后发现事情并没有那么简单, 记录如下.

接入 HomeAssistant

按照 HA 的文档 ONVIF Camera 接入无非就是配置文件里写两行配置的事, 但无论是使用默认配置还是尝试后台页面里的几个端口都是添加失败.
最后使用 DSM 的 Surveillance Station 找到了正确的端口, 事后发现其实使用 iSpy 也可以找到正确的端口, 端口是2020.

HA 配置如下:

1
2
3
4
5
6
7
8
ffmpeg:

camera:
- platform: onvif
host: 192.168.2.2
port: 2020
username: admin
password: password

需要注意的是使用 onvif camera 需要配置 ffmpeg, 另外可能根据环境不同需要 pip install onvif-zeep-async

ONVIF 与 RTSP 参数

onvif
http://192.168.2.x:2020/onvif/device_service
rtsp 1920x1080
rtsp://admin:pass@192.168.2.x:554/stream1
rtsp 640x480
rtsp://admin:pass@192.168.2.x:554/stream2

PTZ / 云台控制

接入 HA 和 DSM Surveillance Station 之后发现云台不能控制, 看来说的支持 ONVIF 只是可以录制.
剩下的大部分记录如何控制云台.

抓包

Charles 抓包的结果是失败, 应用没有走设置的代理.

Read More

MacBook Pro 2016 充电功率

前两天服役一年多的洋垃圾 Dell TB15 挂掉了, 表现是只能充电, 提示 usb 设备耗电过多被禁用.

查了几个拓展坞都在价格承受范围之外(流下了穷人的眼泪), 最后决定再买个电源配合之前买的华为 MateDock 用.
参考了充电头网 Macbook的好搭档 60~65W USB PD充电器推荐, 最后选择了网易智造的65W充电器.

测试结果如下:

充电器(标称功率) 充电线 系统详情功率 显示充电器详情
原装 (87W) 原装线 86W Y
原装 (87W) 微软 Dock 线 60W Y
网易智造 (65W) 原装线 65W N
网易智造 (65W) 微软 Dock 线 60W N
Dell TB15 (180W电源) - 58W N
原装 (87W) 原装线 -> 华为 MateDock 51W N

##结论

  • Dell TB15 供电 58W 使用一年多没有过供电不足的情况, 58W 在中等压力下其实已经够用.
  • 网易智造65W 充电器 + 微软 Dock 线 够用/实惠.
  • 华为 MateDock 外接显示器长时间使用温度 60+℃.
  • 充电功率与 充电器 和 充电线 都有关系.

电信阿里鱼卡 UC 免流原理

上个月和电信客服扯皮两周多终于把手机套餐改成了阿里鱼卡套餐。
从 59RMB (500MB+100分钟通话) 的高端套餐改成了 19RMB(1GB+100分钟+日租+阿里文娱应用免流) 低端套餐。
实在要吐槽一下电信改套餐的规定。改套餐明明一个电话或者App戳戳就能搞定事情,偏偏让你回归属地营业厅跑一趟。虽然最后手持身份证拍照异地受理了但体验实在是不好。

鱼卡UC浏览器免流大体实现是这样的

抓包

Wireshark抓包
注意这段 Proxy-Authorization: 1|15120022766*******|com.ucweb.iphone.lowversion|ca5fe4b11712e10ba745c2817*******
关于 Proxy-Authorization 见 https://developer.mozilla.org
即UC浏览器的请求都经过代理服务器。
对比几次请求可以发现 1|UID|UA|Key 这几段猜测规律

  • 1 不变
  • UID 标示用户ID
  • UA 浏览器UA
  • Key 由网站Host计算,应该是md5

反编译

反编译 Android 客户端,基本验证各字段的意义
UC浏览器拼接Proxy-Authorization

而 bcX 和 bcW 的获取过程断点获得调用栈如下

在浏览器激活免流的时候会获取相关字段(不清楚是否会定时更新)
请求 https://freeflow.uc.cn/freeflow/generatePhoneToken 获取一段密文,解密之后解析赋值给 bcX bcW
当开始网络请求时由对应 UID|Key|Host 计算 md5

获取Host

计算MD5

拼接Proxy-Authorization

密文解密之后的结构体

上面需要的 UID UA KEY Server Port都在里面

所以

SSL Pinning 还是必须的。

Android Method Trace 生成与解析

Android Studio 3.0 中的 Profiler 工具相比 2.0 版本有了很大的进步,这几天翻了下相关的源码记录如下.

生成 trace 文件

官方的文档里对于生成 trace 文件主要有两种

code

第一种是在代码中添加

1
2
3
4
5
// start tracing to "/sdcard/calc.trace"
Debug.startMethodTracing("calc");
// ...
// stop tracing
Debug.stopMethodTracing();

生成的trace文件

ddmlib

第二种是使用 ddms / Android Monitor 手动生成, ddms 的核心是一个叫 ddmlib 的库, 在 Android SDK 里 tools/lib/ddmlib-*.jar 可以找到.
网上关于 ddmlib 的文章不多, 可以参考一下. 隐藏Boss——ddmlib使用入门通过 ddmlib 使用 adb,构建框架基础库

命令行工具

翻着源码掉了 N 次坑写了一个命令行调用的 jar AndroidMethodTraceRunner
命令行中调用 $ java -jar mtr.jar -p com.your.package -o output.trace -t 10 可以 trace 10 秒钟, 运行需要 java8.
主要的两个坑:
AndroidDebugBridge.init(true); false 的话不能获取到 client
必须关闭 ddms 和 Studio 的 monitor / profiler, 否则会抢占 client 造成连接失败.

对于 ddmlib 有几个大体的概念
bridge - adb
device - 设备
client - 应用

主要代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
//bridge
//**注意**, 生成 trace 需要连接 client, init(false) 会断开 client
AndroidDebugBridge.init(true);
AndroidDebugBridge bridge = AndroidDebugBridge.createBridge();

//device
IDevice[] devices = bridge.getDevices();
IDevice device = devices[0];

//client
Client client = device.getClient(packageName);

//start stop
client.startSamplingProfiler(10, TimeUnit.MILLISECONDS);
client.stopSamplingProfiler();

Android Studio

但是 Android Studio 3.0 中并没有使用 ddmlib
大体调用栈如下:

1
2
3
4
5
6
7
8
9
10
11
./idea/profilers-ui/src/com/android/tools/profilers/cpu/CpuProfilerStageView.java:      myStage.startCapturing();

startCapturing
./tools/adt/idea/profilers/src/com/android/tools/profilers/cpu/CpuProfilerStage.java
com.android.tools.profilers.cpu.CpuProfilerStage#startCapturing

./tools/base/profiler/native/perfd/cpu/cpu_service.cc
grpc::Status CpuServiceImpl::StartProfilingApp

./tools/base/profiler/native/perfd/cpu/simpleperf_manager.cc
bool SimplePerfManager::StartProfiling

解析/读取 trace

GUI

ddms 或者 Android Studio 2.0 / Intellij IDEA 可以直接打开 trace 文件, 但是都没有 Android Studio 3.0 的 profiler 直观好用.

android-studio-3.0-profile)

android-studio-traceview

monitor

dmtracedump

todo

命令行工具

todo