起因 这个需求起源于我的一个仓库 DawningW/Microcontroller-Projects, 这个仓库存储着我自高三开始接触嵌入式以来到现在的所有项目. 但前年发现随着我接触的单片机越来越多, 仓库变的越来越大, 不方便他人拉取仓库并贡献代码, 而且其中的某些玩具项目也越做越大, 例如 rgblight, 都放在同一个仓库里也不方便别人 …
全局悬浮窗权限 判断是否能显示悬浮窗: Settings.canDrawOverlays(context) 跳转至悬浮窗设置的Intent: new Intent(Settings.ACTION_MANAGE_OVERLAY_PERMISSION, Uri.parse("package:" + context.getPackageName())) …
前段时间又遇到了一个奇奇怪怪的需求, 就是在程序中获取物理网卡的MAC地址, 之所以强调是物理网卡, 是因为不想要虚拟机和VPN的虚拟网卡的MAC地址. 当然了, 这个需求还是有其实际意义的, 就是做软件的反盗版功能. 看似简单的功能, 其实花费了好长时间, 而且还没写出来, 就把写的部分代码和找的资料贴在这里吧. ...
Installed Build Tools revision 31.0.0 is corrupted. Remove and install again using the SDK Manager. Build Tools 31.0.0缺少dx.bat和lib\dx.jar, 从30拷一份过去就行. Google, 你能长点心吗 参考: https…
通常在使用真机调试的时候我们都会将设备通过数据线连接到电脑上进行调试, 但在某些特殊情况下我们希望通过无线连接进行调试, 例如忘记带线, 或者是手机需要充电等, 所幸ADB为我们提供了无线调试的功能, 这篇文章将会介绍开启无线调试的几种方式. ...
Gson使用泛型 如果你的后端统一了返回结果的话, 那么可以用Gson解析带泛型成员的Bean, 但在这个过程中遇到了一个坑, 现记录如下: ...
刚刚遇到了需要让Windows API提供的MessageBox位于父窗口中间这个需求, 查阅资料得知MessageBox几乎都是写死的, 需要用钩子hook其激活事件, 然后调用MoveWindow或者SetWindowPos函数设置对话框的位置, 代码如下: ...
不应在UI线程执行耗时过长的操作 主线程上不能执行耗费时间过长的操作, 例如文件读写和网络等操作, 除非开启严格模式, 但正式环境不应使用严格模式 严格模式 所以就介绍一下严格模式 StrictMode类是Android 2.3(API 9)引入的一个工具类, 可以用来帮助开发者发现代码中的一些不规范的问题, 以达到提升应用响应能力的目的. 举个例…