草庐IT

query-dsl

全部标签

因为 QUERY_ALL_PACKAGES 权限,我们上不了 Google Play 了

前言em…今天刚上班就被告知要移除QUERY_ALL_PACKAGES权限,做代码兼容,否则上不了GooglePlay了。这个权限最常用于判断某个应用是否已安装:publicbooleancheckAppInstall(Activityactivity,StringpageName){if(!TextUtils.isEmpty(pageName)){finalPackageManagerpackageManager=activity.getPackageManager();Listinfo=packageManager.getInstalledPackages(0);if(info==null

因为 QUERY_ALL_PACKAGES 权限,我们上不了 Google Play 了

前言em…今天刚上班就被告知要移除QUERY_ALL_PACKAGES权限,做代码兼容,否则上不了GooglePlay了。这个权限最常用于判断某个应用是否已安装:publicbooleancheckAppInstall(Activityactivity,StringpageName){if(!TextUtils.isEmpty(pageName)){finalPackageManagerpackageManager=activity.getPackageManager();Listinfo=packageManager.getInstalledPackages(0);if(info==null

Android安全检测之数据库注入漏洞,扫描反编译apk后的代码文件,发现 query()的参数为拼接字符串,SQLiteDatabase的rawQuery查询漏洞

直奔主题,先看一个安全风险隐患整改通知: 被检测出风险的代码如下(通过机型过滤数据):Stringsql="select*frombehaviorwheredevice='"+et_device.getText().toString()+"'";CursorrawQuery=sQLiteDatabase.rawQuery(sql,null);产生原因:query()中使用拼接字符串组成SQL语句的形式去查询数据库,那么为什么这样做就会有注入漏洞呢,以上面被检测到有风险的代码为例:通常的情况,在编辑框里面输入的device是一个固定的型号,如“HUAWEI”,查询语句就是:select*from

Android安全检测之数据库注入漏洞,扫描反编译apk后的代码文件,发现 query()的参数为拼接字符串,SQLiteDatabase的rawQuery查询漏洞

直奔主题,先看一个安全风险隐患整改通知: 被检测出风险的代码如下(通过机型过滤数据):Stringsql="select*frombehaviorwheredevice='"+et_device.getText().toString()+"'";CursorrawQuery=sQLiteDatabase.rawQuery(sql,null);产生原因:query()中使用拼接字符串组成SQL语句的形式去查询数据库,那么为什么这样做就会有注入漏洞呢,以上面被检测到有风险的代码为例:通常的情况,在编辑框里面输入的device是一个固定的型号,如“HUAWEI”,查询语句就是:select*from

ElasticSearch查询常见DSL语句汇总

ES查询之常见查询term查询term的查询代表完全匹配,搜索之前不会对搜索的关键词进行分词。对关键字去文档分词库中匹配内容。基本语法#term查询POSTscs*/_search{"from":0,"size":5,"query":{"term":{"type":{"value":"1"}}}}terms查询terms和term的查询机制是一样的,都不会对搜索的关键词进行分词。对关键字去文档分词库中匹配内容。POSTscs*/_search{"query":{"terms":{"customerCode.keyword":["ds","fc"]}}}match查询match查询属于高层查询,

ElasticSearch查询常见DSL语句汇总

ES查询之常见查询term查询term的查询代表完全匹配,搜索之前不会对搜索的关键词进行分词。对关键字去文档分词库中匹配内容。基本语法#term查询POSTscs*/_search{"from":0,"size":5,"query":{"term":{"type":{"value":"1"}}}}terms查询terms和term的查询机制是一样的,都不会对搜索的关键词进行分词。对关键字去文档分词库中匹配内容。POSTscs*/_search{"query":{"terms":{"customerCode.keyword":["ds","fc"]}}}match查询match查询属于高层查询,

vue3的路由传参query、params以及动态路由传参

一、query传参编程式导航使用router.push或者router.replace的时候,改为对象形式新增query必须传入一个对象import{useRouter}from'vue-router';...constrouter=useRouter()consttoDetail=(item:Item)=>{router.push({path:'/info',query:item})}接受参数使用useRoute的querytemplate>div>div>ID:{{route.query?.id}}div>div>名称:{{route.query?.name}}div>div>价格:{{r

vue3的路由传参query、params以及动态路由传参

一、query传参编程式导航使用router.push或者router.replace的时候,改为对象形式新增query必须传入一个对象import{useRouter}from'vue-router';...constrouter=useRouter()consttoDetail=(item:Item)=>{router.push({path:'/info',query:item})}接受参数使用useRoute的querytemplate>div>div>ID:{{route.query?.id}}div>div>名称:{{route.query?.name}}div>div>价格:{{r

从零开始实现lmax-Disruptor队列(五)Disruptor DSL风格API原理解析

MyDisruptorV5版本介绍在v4版本的MyDisruptor实现多线程生产者后。按照计划,v5版本的MyDisruptor需要支持更便于用户使用的DSL风格的API。由于该文属于系列博客的一部分,需要先对之前的博客内容有所了解才能更好地理解本篇博客v1版本博客:从零开始实现lmax-Disruptor队列(一)RingBuffer与单生产者、单消费者工作原理解析v2版本博客:从零开始实现lmax-Disruptor队列(二)多消费者、消费者组间消费依赖原理解析v3版本博客:从零开始实现lmax-Disruptor队列(三)多线程消费者WorkerPool原理解析v4版本博客:从零开始实

从零开始实现lmax-Disruptor队列(五)Disruptor DSL风格API原理解析

MyDisruptorV5版本介绍在v4版本的MyDisruptor实现多线程生产者后。按照计划,v5版本的MyDisruptor需要支持更便于用户使用的DSL风格的API。由于该文属于系列博客的一部分,需要先对之前的博客内容有所了解才能更好地理解本篇博客v1版本博客:从零开始实现lmax-Disruptor队列(一)RingBuffer与单生产者、单消费者工作原理解析v2版本博客:从零开始实现lmax-Disruptor队列(二)多消费者、消费者组间消费依赖原理解析v3版本博客:从零开始实现lmax-Disruptor队列(三)多线程消费者WorkerPool原理解析v4版本博客:从零开始实