综合( 右侧选择分类 )
android

Android 7.0 Android N FileUriExposedException 文件兼容性问题

从Android 7.0开始,一个应用提供自身文件给其它应用使用时,如果给出一个file://格式的URI的话,应用会抛出FileUriExposedException。这是由于谷歌认为目标app可能不具有文件权限,会造成潜在的问题。所以让这一行为快速失败。详见这里。这里讨论两种解决方式。1 FileProvider方式这是谷歌官方推荐的解决方案。即使用FileProvider来生成一个conte
3072 人浏览
hangge

Docker - 构建一个带有ping、ifconfig命令的Ubuntu镜像

用Docker拉取的Base镜像(如Centos、Ubuntu)都是最简版本,不包含Ping工具。但有时我们需要用到Ping工具来测试两个容器间的网络连接,下面演示如何创建并使用一个带有ping命令 的Ubuntu镜像。1,构建镜像(1)首先我们创建一个Dockerfile文件,内容如下:1234FROM ubuntu:latestRUN apt-get update \&&
3071 人浏览
php

MySql 权限不足导致的无法连接到数据库以及权限的授予和撤销 (转)

Host is not allowed to connect to this MySql Server 当“初次”在CentOS系统上(安装在虚拟机中)安装并且简单配置完MySql服务器之后,想要在本地访问虚拟机上的MySql数据库,当在本地输入mysql登陆命令后,出现如下图所示错误。简而言之,即Host(192.168.10.1)不允许连接MySql数据库。【障碍再现】 Host is not
3071 人浏览
web

给 Web 开发人员推荐的开源图形库 —— 动画

现代 Web 开发在将体验和功能做到极致的同时,对于美观的追求也越来越高,数据可视化、动画交互、2D/3D 等元素已然成为标配。以下是为 Web 开发者推荐的一些精品开源图形库,旨在专注于最常见的问题和最常用的东西。将针对动画(Animation)、数据可视化(Data Visualization)、2D/3D 分别整理,欢迎保持关注。给 Web 开发人员推荐的开源图形库 —— 2D/3D给 We
3069 人浏览
SuperBig

Android Service详解(四)---绑定服务BoundService详解之扩展Binder类

这是第四篇文章主要讲的是BoundService中使用扩展Binder类实现一、基础知识1.什么是绑定服务绑定服务是客户端-服务器接口中的服务器。绑定服务可让组件(例如 Activity)绑定到服务、发送请求、接收响应,甚至执行进程间通信 (IPC)。 绑定服务通常只在为其他应用组件服务时处于活动状态,不会无限期在后台运行。2.实现原理应用程序组件(客户端)通过调用bindService()方法能
3069 人浏览
hangge

K8s - Kubernetes使用详解1(运行Deployment样例1:使用命令创建资源)

Kubernetes通常不会直接创建Pod,而是通过Controller来管理Pod的。为了满足不同的业务场景,Kubernetes提供了多种Controller,包括Deployment、ReplicaSet、DaemonSet、StatefuleSet、Job等。 下面我先介绍下其中最常用的Deployment。Kubernetes支持两种创建资源的方式:命令和配置文件。本文先使用前者。一、
3068 人浏览
android00

我的Android进阶之旅------>解决Android Studio编译后安装apk报错:The APK file does not exist on disk

1、错误描述今天用Android Studio编译应用后安装APK的时候,报错了,错误如下所示:TheAPKfilebuild\outputs\apk\OYP_2.3.4_I2Base_6476_official_debug.apkdoesnotexistondisk. ErrorwhileInstallingAPK12如下图所示2、解决方法1、尝试了Build -> Clean Proj
3067 人浏览
android00

Android Studio导入Eclipse项目的两种方法

Android Studio导入Eclipse项目有两种方法,一种是直接把Eclipse项目导入Android Studio,另一种是在Eclipse项目里面进行转换,然后再导入Android Studio。1. 直接导入打开Android Studio,如果里面已经打开了项目,选择关闭当前的项目,会弹出一个Welcome对话框:选择Import project (Eclipse ADT, Gra
3062 人浏览
SuperBig

Android Service详解(三)---IntentService

这是第三篇文章主要讲的是IntentService的使用一、Service的耗时操作如何解决呢?不管是何种Service,它默认都是在应用程序的主线程(亦即UI线程)中运行的。所以,如果你的Service将要运行非常耗时或者可能被阻塞的操作时,你的应用程序将会被挂起,甚至会出现ANR错误。为了避免这一问题,你应该在Service中重新启动一个新的线程来进行这些操作。现有两种方法大家参考:① 直接在
3061 人浏览
android

字符串分割--java中String.split()用法

在java.lang包中有String.split()方法,返回是一个数组。 1、“.”和“|”都是转义字符,必须得加"\\";  如果用“.”作为分隔的话,必须是如下写法:String.split("\\."),这样才能正确的分隔开,不能用String.split(".");如果用“|”作为分隔的话,必须是如下写法:String.spl
3056 人浏览
linux

[图解]ARP协议(一)

一、ARP概述如果要在TCP/IP协议栈中选择一个"最不安全的协议",那么我会毫不犹豫把票投给ARP协议。我们经常听到的这些术语,包括"网络扫描"、"内网渗透"、"中间人拦截"、"局域网流控"、"流量欺骗",基本都跟ARP脱不了干系。大量的安全工具,例如大名鼎鼎的Cain、功能完备的Ettercap、操作傻瓜式的P2P终结者,底层都要基于ARP实现。听上去这么"逆天"的协议,其实技术原理又简单的难
3055 人浏览
androidproject

二次贝塞尔曲线绘制原理讲解

贝塞尔曲线简介贝塞尔曲线(Bézier curve),又称贝兹曲线或贝济埃曲线,是应用于二维图形应用程序的数学曲线。一般的矢量图形软件通过它来精确画出曲线,贝兹曲线由线段与节点组成,节点是可拖动的支点,线段像可伸缩的皮筋,我们在绘图工具上看到的钢笔工具就是来做这种矢量曲线的。贝塞尔曲线是计算机图形学中相当重要的参数曲线,在一些比较成熟的位图软件中也有贝塞尔曲线工具,如PhotoShop等。在Fla
3054 人浏览
hgweb

Vue.js - 判断当前是开发环境、还是生产环境(附样例)

1,判断样例(1)有时我们需要在代码中判断目前项目是处于开发环境、还是生产环境,然后根据不同环境执行不同的逻辑代码。下面是一个简单的样例:12345if(process.env.NODE_ENV ==="development") {alert("开发环境");}else{alert("生产环境");}(2)如果在开发环境(执行npm r
3048 人浏览
web

给 Web 开发人员推荐的测试工具

用户对于现代 Web 应用除了美观要求之外,对产品体验度也有较高的要求。在推荐过几期开源图形库和通用独立 UI 组件后,觉着是时候推荐一些测试工具了。这应该也是该系列的最后一篇,感谢大家的支持。给 Web 开发人员推荐的通用独立 UI 组件(二)给 Web 开发人员推荐的通用独立 UI 组件(一)给 Web 开发人员推荐的开源图形库 —— 2D/3D给 Web 开发人员推荐的开源图形库 —— 动画
3040 人浏览
web

给 Web 开发人员推荐的通用独立 UI 组件(二)

现代 Web 开发在将体验和功能做到极致的同时,对于美观的追求也越来越高。在推荐完图形库之后,再来推荐一些精品的独立 UI 组件。这些组件可组合在一起,形成美观而交互强大的 Web UI 。给 Web 开发人员推荐的通用独立 UI 组件(一)给 Web 开发人员推荐的开源图形库 —— 2D/3D给 Web 开发人员推荐的开源图形库 —— 动画给 Web 开发人员推荐的开源图形库 —— 数据可视化上
3039 人浏览
kotlin

Android Edittext进行字符限制

在工作中,根据需求,EditText对输入的内容进行20个字符的限制,一个汉字占两个字符,一个字母占一个字符,当已经输入19个字符的时候,不可以输入汉字,但是还可以输入一个字母。如果输入超过20个字符,进行截取20个字符。以下是网上大神的工具类,我这边根据自己需求修改。(其中的20个可以随意的修改)1,创建工具类packagecom.zhzd.youde.util; importandroi
3036 人浏览
cheng

Mysql中的GAP锁(间隙锁)

以前的Mysql在repetable read级别下,还会出现幻读,现在的已经不会了,原因就是因为多了个Gap锁例:Repeatable Read隔离级别,id上有一个非唯一索引,执行delete from t1 where id = 10; 假设选择id列上的索引进行条件过滤,最后的加锁行为,是怎么样的呢?同样看下面这幅图:这幅图中多了一个GAP锁,而且GAP锁看起来也不是加在记录上的,倒像是加
3033 人浏览
cnbzlj

android studio 快速删除无用的import包

今天,简单讲讲如何使用android studio 快速删除无用的import包。在开发过程中,随着项目的迭代,文件内部分import 可能早已经不用了,对于这种无用的 import,我们不可能一个一个文件的删除。这里记录个自动删除无用import的功能。一、方法/步骤1.启动Android Studio,打开项目,可以看到该java文件有多余的import,如图:2.点击菜单中的“Code”,如
3030 人浏览
android00

tools:text和android:text

安卓开发中,在写布局代码xml的时候,如果想看到运行之后才能看到的布局效果,但又不想动不动就把应用跑起来。就可以用到tools这个命名空间了。tools命名空间比较特别。该命名空间可以覆盖组件的任何属性,以便在Android Studio预览中进行不同的展示。而,应用运行时,所有tools打头的属性都会被忽略,上面的文字不会显示出来。真的很方便!例子如下:<TextView and
3029 人浏览
android

Google推荐的图片加载库Glide介绍

在泰国举行的谷歌开发者论坛上,谷歌为我们介绍了一个名叫 Glide 的图片加载库,作者是bumptech。这个库被广泛的运用在google的开源项目中,包括2014年google I/O大会上发布的官方app。它的成功让我非常感兴趣。我花了一整晚的时间把玩,决定分享一些自己的经验。在开始之前我想说,Glide和Picasso有90%的相似度,准确的说,就是Picasso的克隆版本。但是在细节上还是
3029 人浏览