- 博客(62)
- 资源 (12)
- 收藏
- 关注
原创 android webview加载页面失败事件的处理,包括http异常的情况
webview页面加载失败怎么处理,包括http请求失败,而不是服务器不可达
2024-05-10 14:28:56 693 1
原创 简搜,一个安卓应用,用于扫描纸质书,把它变成可以用多个关键词搜索的电子书
诸如自考、公务员考试考试中,需要大量刷题时,大部分知识点就在书中,但是要找到它,通常要花几分钟甚至个把小时。1)本软件免费使用,实现逐页扫描纸质书,并将其中内容变得可以搜索,方便书本拥有者查找书本中的知识,用于自考、考公等场景,也适合对工具书的搜索。3)扫描内容只能由扫描者使用,不得以任何形式分享或传播,如因分享或传播所带来的一切法律风险须由使用人承担,本人不承担任何责任。电子书中内置了搜索引擎,可以像百度搜索一样在书中搜索,列出满足条件的页,缩小检索范围,极大减少搜题时间。如不同意以上条款,请勿使用。
2024-04-18 21:23:37 268
原创 半老的码农,能做点什么?
至简网格是为中小企业信息化、自动化服务的开发框架,它提供了端与云的全部技术实现。小到可以部署在一部手机上,大到可以跨机房集群,跨城市容灾。因为足够小,所以可以运行在各种资源受限的场景中,比如边缘计算。因为足够简单,接口定义很简单,端侧UI也非常容易,刚毕业的学生也可以很快掌握并开发出像样的服务。
2024-04-10 14:37:07 160
原创 Android开发中,Vue 3处理回退按键事件
/声明全局函数,在Activity中调用。//使用CompletableFuture,可以解决很多Android中调用跟回调分离十万八千里的问题。* 先判断vue中是否有历史可回退,如果有则执行vue的back,并返回true,否则直接返回false。vue3有一些变化,按照网上有些文章的方法,发现行不通,通过一段时间的打印、尝试后,发现以下方法可行。//实现按回退按钮回退历史页面,如果无历史,则退出activity或应用。
2024-02-01 18:08:05 498
原创 C#使用ECC椭圆曲线算法实现加密与解密&签名与验签,有完整代码
C#使用EC椭圆曲线算法实现加解密&签名与验签,有完整代码。实现了将公钥、私钥转为base64字符串,以及反向转换。转换的公私钥可以与Java互通。
2023-06-14 22:33:17 2547
原创 Android升级AGP8,启用R8,使用fastjson、log4j,发现无法release,生成了也不能正常使用
自动升级后,使用了AGP8,然后出现一堆Missing Class错误,在项目的proguard-rules.pro文件中添加-ignorewarnings(AGP7之后warnings升级为errors,导致无法继续),总算生成了release版本。根据文档提示,在工程的gradle.properties中添加android.enableR8.fullMode=false,禁用掉fullmode,发现可以了,apk变大了将近1M,完全可以接受,还是比以前的release小将近一半。总之,应用已经废了。
2023-06-02 18:24:33 1396
原创 Android实现App内自动升级,适配了安卓7、8及以上版本
应用发布后,要实现灰度升级控制,如果只依赖各家应用市场是不够的,还需要自己在应用中控制升级逻辑。并且每家应用市场上新审核也是一件很麻烦的事情,尤其像这样的应用,甚至没在应用市场上架,更不可能依赖它们了。所以必须要在应用中实现自动升级功能。网上有很多介绍,他们摸索的结果对我有很大帮助。可能是因为版本关系,或者关注点不同,照着做,会有很多过时的或错误的地方,所以我将摸索过程记录在此,防止忘记。下面几个图是在华为荣耀V9(安卓7.0、SDK 24)中的界面:图1、提醒有可升级的版本图2、下载版本。
2023-05-29 15:34:03 4768 8
原创 Java实现IPv4转地址,基于纯真数据库的一种高性能实现
IPv4转地址,返回String[],有四个部分:运营商、国家根域名 国家、省/州、详细地址(市、县/区),其中省份、详细地址、运营商信息可能没有,如果没有,则返回“*”。比如查询“1.34.236.0”返回“中华电信 中国 台湾 新北”,查询“1.57.0.255”,返回“联通 中国 黑龙江 绥化”,查询“4.0.0.7”,返回“Level3 美国 科罗拉多州 布隆菲尔德”。使用原来的55万行IP地址记录作为查询输入,做了个性能测试,单线程可以达到500万/秒,性能与功能应该能满足绝大部分使用场景了。
2023-05-23 15:19:04 245
原创 至简网格:一套适合中小企业信息化开发的框架,端云结合,全面服务化,可分布式跨站部署,也可部署在一部旧手机上
至简网格是一套端云结合的开发框架,极大简化服务端、客户端的开发、运维难度,同时兼顾安全、可靠。
2023-05-17 11:44:33 189
原创 Netty 4中ChunkedWriteHandler与HttpContentCompressor冲突导致不压缩的问题
如果ChunkedWriteHandler与HttpContentCompressor都使用,在传递文件会忽略掉HttpContentCompressor导致内容并没有压缩,所以重载HttpContentCompressor使得它可以与ChunkedWriteHandler配合使用。以下代码中重载write函数将msg包装成HttpContent使得内容可以被压缩,同时重载beginEncode只容许压缩几种常见的类型,其他类型都放弃压缩,比如jpg、png等本身已经压缩过,再次压缩只会增大体积。
2023-04-19 14:52:05 501
原创 全栈开发中碰到的一些问题及解决方法
在AndroidMenifest.xml-application-android:networkSecurityConfig中可以自定义安全策略,比如预置自签名的根证书等。在一些例子中,出现诸如DATA_DIR、PACKAGE_NAME等属性,其实它们不能用,通过看代码,猜测可能是因为logback获取应用Context的方法有误。所以需要在程序里加载配置前,设置自定义属性,然后在logback.xml中引用。
2022-09-21 08:39:07 2760
原创 KeyTool生成证书链及在java、c#中的运用
SSL中用到证书,那么证书是什么?证书可以理解为一个包含了签发方信息、拥有者信息、公钥、由签发方私钥产生的签名等信息的文档,当然还包括其他一些信息。校验用户证书是否可信,实际上就是检验该证书是否由合法的机构签发的。校验时,通过该证书中的结构信息找到对应机构的证书,利用机构证书中的公钥去校验用户证书中的签名是否正确。从上述校验方法可以看出,证书是否可信,是由其签发方证书来校验的,而机构的证书是否可信,是由上一层机构的证书来校验的,如此就形成一条证书链,最顶层机构的证书的就是常说的根证书。
2022-09-14 23:05:03 3408
原创 【备忘】Windows下一些常用路径记录
任务栏图标路径:C:\Users\用户名\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\User Pinned\TaskBar比如修改cmd的起始路径,可以在这个目录下找到cmd的快捷方式,然后右键选择“属性”,修改“起始位置”即可。开始菜单快捷方式路径:C:\ProgramData\Microsoft\Windows\Start Menu\Programshosts路径(用于添加本地域名解析):C:\Windo.
2021-10-12 21:27:58 413
原创 【备忘】Eclipse Gradle工程中碰到的一些问题
环境 Gradle安装 网上有很多教材,不赘述。下载最新的gradle解压到一个目录; 增加环境变量GRADLE_HOME(gradle的解压目录)、及GRADLE_USER_HOME; 在环境变量PATH中增加一个 %GRADLE_HOME%\bin Eclipse Gradle插件安装 安装buildship插件,默认已安装,如果没安装,则在help->eclipse marketplace中搜索buildship,安装创建工程Eclipse创建工程时,选择一个
2021-09-10 22:56:58 1656 2
原创 【备忘】Android开发探坑记录(包括AndroidStudio)
1)应用权限在AndroidMenifest.xml中设置,与application同一级别 <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <uses-permission android:name="android.permissi...
2020-12-05 12:21:20 145
原创 Rust 开发环境安装
1.设置跟路径设置环境变量RUST_HOME;RUSTUP_HOME=%RUST_HOME%\.rustupCARGO_HOME=%RUST_HOME%\.cargoRUSTUP_UPDATE_ROOT=https://mirrors.ustc.edu.cn/rust-static/rustupRUSTUP_DIST_SERVER=https://mirrors.ustc.edu.cn/rust-staticRUST_BACKTRACE=1 //调试出错时打印详细调用栈2.安装2.1.安装
2020-09-06 21:57:01 885 3
原创 【备忘】CefSharp使用
创建.net framework form类型的项目虽然网络说wpf类型项目是未来,form将淘汰,但是我不喜欢用xml生成界面,可视化设计+程序生成更加容易使用 使用.NET framework(不要使用.NET core,不然在Register JS时提示BrowserSubprocess错误),据说可以跨多个平台,暂时没有验证添加CefWinForms使用NuGet工具安装CefSharp.WinForms,它依赖CefSharp.Common,CefSharp.Common又..
2020-08-18 22:42:08 1430
原创 【备忘】nodejs+npm+electron安装
一、nodejs+npm安装下载nodejs的二进制解压版,在d:\tools下解压,改目录名为nodejs,设置环境变量NODE_HOME为D:\Tools\nodejs; 其他配置npm config set cache="D:\Tools\nodejs\node_cache"编译过程中下载的东西都缓存在这里的npm config set prefix="D:\Tools\nodejs\node_global"这个配置会改变npmrc的位置在环境变量的path中增加%NOD.
2020-08-18 22:34:30 576
原创 【备忘】mychrome编译尝试,最终失败了,只是解决了stdafx的问题
DuiLib编译 String等系统标准头文件找不到 在项目上点击右键,选择“属性”,找到“配置属性-常规”,修改windows sdk版本,这里列出了系统已经安装的SDK版本 找不到stdafx.h 在项目属性中找到C/C++,将“预编译头”选项改成使用 找不到DuiLib.pch 找到stdafx.CPP文件,右键选择“属性”,将“预编译头”改为“创建”,因为这个文件是在所有编译之前编译,它不能使用自身的编译结果 遇到意外的文件结尾 ...
2020-08-18 22:32:51 153
原创 反向代理的含义
“反向代理”这个名词应是相对于“代理”这个词,代理的作用不必多说,最常见的场景是在一些局域网中的用户浏览网页,会在浏览器中设置代理服务器,通过代理访问外网。而反向代理不是给普通用户用的,是给服务端业务服务器用的,可以理解成业务服务器集群的一个网关。
2014-09-19 11:32:13 990
原创 Java 删除c/c++/java代码注释的代码片段
enum CommentState {NORMAL, COMMMENT_START, MULTI_COMMENT, SIGNLE_COMMENT, COMMENT_ENDING, COMMENT_END, STR, SINGLE_STR}; public static String removeComment(String s) { int len = s.length
2014-06-20 15:16:19 732
原创 HandlerSocket java客户端
handlersocket优点,相当于sql性能更高,相对于memcached,可以持久化,支持多列等,因为基于存储引擎,所以数据库的集群也是可以支持的(我没测试),使用handlersocket时,服务端CPU消耗更少。但是,有个比较大的缺点,有handlersocket客户端连接时,我测试的是,这时不能调整表结构。同时查询只能基于索引,不能关联多个表等(这些都是可以接受的)。
2014-03-09 21:37:15 1389 1
原创 erlang 使用rsa加密及解码的方法
其中的pub.key格式如下-----BEGIN PUBLIC KEY-----.....-----END PUBLIC KEY-----pri.key格式如下-----BEGIN RSA PRIVATE KEY-----...-----END RSA PRIVATE KEY------module(rsa).-author('flyin
2013-12-18 14:15:20 2968
原创 简单的js calendar
(function($){ var g_dayNumOfMonth = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; var g_cn_weekDays = ['日', '一', '二', '三', '四', '五', '六']; var g_cn_months = ['一月', '二月', '三月', '四月',
2013-11-22 18:35:27 784
原创 一个android sdk工程的ant脚本样例
以下脚本只需要修改部分即可,总共6处,满足大部分的场景,包括了proguard,工程目录下需要有proguard.cfg文件。附带一句,如果proguard中要去除debug日志,可以在proguard.cfg文件中加入以下内容:-assumenosideeffects class android.util.Log { public static *** d(..
2013-10-09 09:57:24 1271 1
原创 android:layout_gravity与gravity的区别
gravity是指元素的子元素在该元素中的布局位置;layout_gravity是指该元素在父元素中的布局位置。这两个经常搞混。
2013-08-08 20:42:00 484
原创 eclipse中选择元素后反显的设置
java文件的设置"Window"-"preferences"-"Java"-"Editor"-"Mark Occurrences"复选框勾选 js文件的设置"Window"-"preferences"-"web"-"javascript"-"Mark Occurrences"复选框勾选其他语言,在响应的editor中
2013-06-18 10:53:35 1017
原创 android升级sdk后,原来正常的工程,运行时提示classnotfound
原因是classpath文件的要求变化了,需要在工程根目录下的".classpath"文件中,将以下这行:改为:然后refresh、clean工程,再次运行就可以了。
2013-06-14 15:45:10 884
原创 AZDG算法java实现
这个算法不知道什么时候出来的,discuz中用它来记录用户信息,存到客户端浏览器的cookie中,每次请求时,服务端解开它,得到用户信息,下面这段代码是java的实现,从网上搜到一些原始代码,改造了一下。性能还可以,双核2G主频,8线程,可以稳定在13万tips以上的加解密,比从数据库、cache取数据要高效非常多,相同环境下AES加解密不到5万tips。明文、密码越长加密越慢,相同明文、
2013-06-07 14:45:39 1562
简搜scanner-app 1.31
2024-04-18
netty 4.1.85 all-in-one
2022-11-25
基于jquery的小日历,可以单选、多选、按范围选
2015-01-19
handler socket erlang client
2013-02-15
日期间隔计算器
2012-03-18
FrameCHM2.66
2008-10-18
UML工具FrameUML
2008-10-12
XSCHMBuilder2.66
2008-02-23
XSCHMBuilder2.63
2008-01-09
XSCHMBuilder2.63
2007-10-20
XSCHMBuilder2.62
2007-06-28
XSCHMBuilder2.5
2007-02-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人