自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

僅此的博客

合抱之木,生於毫末;九層之台,起於累土;千里之行,始於足下。

  • 博客(70)
  • 资源 (2)
  • 收藏
  • 关注

原创 防止被恶意调用API接口

在面试时,经常会被问一个问题:如何防止别人恶意刷接口?这是一个非常有意思的问题,防范措施挺多的。今天这篇文章专门跟大家一起聊聊,希望对你会有所帮助。

2024-02-18 16:18:36 1012

原创 PostgreSQL常用命令

数据库版本 :9.6.6,REFERENCES,TRIGGER,CREATE,CONNECT,TEMPORARY,EXECUTE 和 USAGE。

2023-12-15 10:57:40 374

原创 pgAdmin 4的安装与使用

②选择备份文件的存储目录并给备份文件取名为test,编码选择为UTF-8,最后点击备份。②选择个人电脑所对应的系统,我的电脑是Windows10系统,所以选择Windows。⑩选择连接后,输入数据库服务器的IP地址,填写用户名和密码之后点击保存。③选择要导入的数据库,如图中的testplatform右键选择还原中。①选择要导出的数据库,如图中的testpingtai右键选择备份。③选择所需要的pgAdmin版本,我选择的是最新的v7.3版本。⑨自定义名称(必填)和注释(非必填)

2023-12-15 09:57:43 311

原创 Android Canvas 改变背景颜色

这个view是重叠的,我在后台的view中加载了一段时间的信息。在那段时间里,我想将 FrontView 设置为白色,然后(当背景完成加载时)变为透明。在 FrontView 中,我有一个带有位图的 Canvas。正在工作,如果我想将背景设置为透明,我可以这样做。第一个选项更好,因为它更精确,例如,如果您想将其设置得不那么透明。我有一个有两个 View 的应用。

2023-12-08 11:42:41 386

原创 Android技术之HashMap中的遍历有序性探究

这样的写法并不能保证map的遍历有序性,因为map重写了forEach方法,底层也是根据entrySet遍历的,所以,如果想用forEach遍历的话,推荐使用LinkedHashMap。但entrySet()并不能保证有序性,不能按照put到map中的顺序遍历。keySet()可以保证有序,即可以按照put到map中的顺序遍历。使用LinkedHashMap遍历entrySet。首先HashMap中的keySet是有序的。使用keySet进行遍历map中的元素。可以发现entrySet具有无序性。

2023-11-12 10:42:15 640

原创 Android中跳转到系统设置界面

21.跳转到系统的NFC设置界面(需要手机支持NFC且API>=16)20.跳转到系统的NFC共享界面(需要手机支持NFC)15.跳转到系统的互动屏保界面(API>=18)8.跳转到系统的应用管理界面(默认应用界面)9.跳转到系统的应用管理界面(全部界面)11.跳转到系统的SIM卡和网络管理界面。12.跳转到系统的语言和时间管理界面。16.跳转到系统的存储和备份管理界面。3.跳转到系统的包含飞行模式的界面。14.跳转到系统的显示和亮度界面。10.跳转到系统的蓝牙管理界面。17.跳转到系统的语言选择界面。

2023-07-05 12:04:58 1194

原创 安卓项目上传到github仓库过程步骤以及注意事项

执行完后,如果没有异常,等待执行完就上传成功了,中间可能会让你输入Username和Password,你只要输入github的账号和密码就行了。点击下面的Create repository,就会进入到类似下面的一个页面,拿到创建的仓库的https地址,红框标示的就是。注意:如果关联错了,要先把之前关联的清空,再重新关联。如果想添加某个特定的文件,只需把.换成特定的文件名即可。第五步:重点来了,将本地的仓库关联到github上。cd到你的本地项目根目录下,执行git命令。第一步:建立git仓库。

2023-06-28 10:59:19 272

原创 redis的启动方式

redis

2022-10-27 10:11:41 43077 1

原创 Android应用跳转微信各种类型的总结记录

app调用微信的总结

2022-10-21 11:09:44 2044

原创 vue项目打包成exe可执行文件

vue项目打包成exe可执行文件

2022-06-01 19:11:38 3987 6

原创 RecyclerView中刷新数据并保持其滚动位置

直接上代码:private int lastPosition = 0;private int lastOffset = 0;rlv_activity_student_list.addOnScrollListener(new RecyclerView.OnScrollListener() { @Override public void onScrollStateChanged(@NonNull RecyclerView recyclerView, int newState) { super

2022-03-01 10:28:13 2690 1

原创 RecyclerView记录其滚动位置,刷新时此条数据置顶

// 定义一个记录位置的变量private int atPosition = 0;// 在数据加载完成后进行操作(此方法放在合适的位置)// 在列表数据加完完成后,执行此方法,对数据进行操作 mRecyclerView.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() .

2022-03-01 10:06:41 530

原创 Android中使用Camera类编写手机拍照App的实例教程

Camera是Android摄像头硬件的相机类,位于硬件包"android.hardware.Camera"下。它主要用于摄像头捕获图片、启动/停止预览图片、拍照、获取视频帧等,它是设备本地的服务,负责管理设备上的摄像头硬件。Camera既然用于管理设备上的摄像头硬件,那么它也为开发人员提供了相应的方法,并且这些方法大部分都是native的,用C++在底层实现,下面简单介绍一下Camera

2022-02-23 10:50:58 6232 1

原创 兼容Android11的手机拍照上传图片和相册选择图片功能(可直接用)

//需要的权限数组 读/写/相机private static String[] PERMISSIONS_STORAGE = {android.Manifest.permission.READ_EXTERNAL_STORAGE, android.Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.CAMERA};// 头像private ImageView imageView;private String imgUrl;.

2022-02-23 10:44:00 3808

原创 Android布局之GridLayout的使用总结

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言 一、pandas是什么? 二、使用步骤 1.引入库 2.读入数据 总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分

2021-12-31 15:06:09 9962

原创 Android 11-第三方应用无法拉起微信适配

Android 11 加强了隐私保护策略,引入了大量变更和限制,其中一个重要变更 ——软件包可见性,将会导致第三方应用通过微信OpenSDK的接口无法正常拉起微信,从而无法使用微信的全部功能,包括但不限于分享消息到微信、拉起小程序等功能。特别需要注意的是,Android11的该变更只会影响到升级targetSdkVersion=30的应用,未升级的应用暂不受影响。适配方案根据Android官方给出的适配方案,在主工程的AndroidManifest.xml中增加<queries&g...

2021-08-06 10:18:27 876

原创 Android开发,多线程和线程池的介绍与总结

一、基础介绍1)线程概念线程在Android中是一个很重要的概念,从用途上来说,线程分为主线程和子 线程,主线程主要处理和界面UI相关的事,而子线程则往往用于执行耗时操作。由于Android的特性,如果在主线程中执行耗时操作那么就会导致程序无法及时响应,因此耗时操作必须放在子线程中去执行。除了主线程之外的线程都是子线程。2)扮演线程的角色有哪些除了普通线程Thread之外,在Android扮演线程角色的还有很多,比如AsyncTask和IntentService,同时HandlerThrea

2021-03-31 11:34:03 434

原创 Android进程间通信的几种方式

RPC采用客户机/服务器模式。请求程序就是一个客户机,而服务提供程序就是一个服务器。首先,客户机调用进程发送一个有进程参数的调用信息到服务进程,然后等待应答信息。在服务器端,进程保持睡眠状态直到调用信息到达为止。当一个调用信息到达,服务器获得进程参数,计算结果,发送答复信息,然后等待下一个调用信息,最后,客户端调用进程接收答复信息,获得进程结果,然后调用执行继续进行。

2021-03-31 11:04:21 1092

原创 Android Service保活的几种方法总结

保活Service我们需要做什么:1.在应用被关闭后保活(最难)2.在内用占用过大,系统自动释放内存时保活(优先杀死占用较高的Service)3.重启手机后自动开启Service4.手机息屏后不被释放内存5.手动清理内存时保活首先介绍一下Service的等级:一、前台进程二、可见进程三、服务进程四、后台进程五、空进程 ---关闭应用后,没有清理缓存所以为了提高优先级我们可以使用startForeground()方法将Service设置为前台进程。一、在Andro.

2021-03-31 10:39:40 2486 1

原创 Flutter学习之路(二)

之前的文章记录了Flutter开发的一小部分基础代码,今天还是要继续记录一个常用的小功能,那就是底部切换栏。做过移动开发的开发者都知道,底部切换栏是大多数应用的必备功能。话不多说,老规矩,直接按步骤上截图,上代码:首先在我们自己的项目中的lib文件下建立几个需要切换的.dart文件,我自己是5个文件,其中4个是对应底部切换栏的4个按钮(HomePage是第一个页面、MsgPage消息页面、CartPage购物车页面、MinePage个人中心页面),还有一个就是承载着4个页面的文件MainPage,如下图

2021-03-11 11:34:28 194 1

原创 Flutter学习之路(一)

作为一名实际开发近10年的Android程序员,对于前端技术不断的更新,有着自己的迷茫,不过身边有人在不断学习和进步,倍感压力。闲言少叙,开始正题,众所周知flutter是谷歌的移动UI框架,可以快速在Android和iOS上构建高质量的原生用户界面。根据实际的需要与自己想要进步的前提下,决定开始最最最最浅显的学习与研究。首先,搭载环境,网上类似的教学已经有很多了,按照步骤+细心一些应该就没问题了。推荐一篇搭建flutter环境的文章,没时间搜索的朋友可以直接去看一下(https://blog.cs

2021-03-09 10:00:13 1994 2

转载 android-percent-support-extend

 对于android-percent-support的扩展库。目前支持:不改变原有库的用法 添加了PercentLinearLayout 支持宽度高度百分比设置值 支持margin百分比设置值 支持padding百分比设置值 支持minWidth , maxWidth , minHeight , maxHeight百分比设置值 支持TextView、Button、Edi...

2018-09-13 22:01:04 289

转载 Android 4.4前后版本读取图库图片和拍照完美解决方案

4.3或以下,选了图片之后,根据Uri来做处理,很多帖子都有了,我就不详细说了.主要是4.4,如果使用上面pick的原生方法来选图,返回的uri还是正常的,但如果用ACTION_GET_CONTENT的方法,返回的uri跟4.3是完全不一样的,4.3返回的是带文件路径的,而4.4返回的却是content://com.android.providers.media.documents/documen

2018-01-22 17:19:40 970

原创 Android常用的框架

1、volley 项目地址 https://github.com/smanikandan14/Volley-demo (1)  JSON,图像等的异步下载; (2)  网络请求的排序(scheduling) (3)  网络请求的优先级处理 (4)  缓存 (5)  多级别取消请求 (6)  和Activity和生命周期的联动(Activity结束时同时取消所有网

2017-07-28 16:50:45 341

原创 Android图片加载框架Glide

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

2017-06-27 09:34:46 340

转载 GO 语言

GO程序员的五个进化阶段:第一个阶段(菜逼): 刚刚学习了这门语言。 已经通过一些教程或者培训班了解基本的语法,可以写短的代码片段。第二个阶段 (探索者): 可以写一个完整的程序,但不懂一些更高级的语言特征,比如“channels”。还没有使用GO写一个大项目。第三个阶段(大手): 你能熟练的使用Go, 能够用GO去解决,生产环境中一个具体和完整的问题。已经形成了一套自己的

2017-05-24 11:27:19 391

原创 强大的Android控件之RecyclerView体验艺术般的控件

概述RecyclerView出现已经有一段时间了,相信大家肯定不陌生了,大家可以通过导入support-v7对其进行使用。 据官方的介绍,该控件用于在有限的窗口中展示大量数据集,其实这样功能的控件我们并不陌生,例如:ListView、GridView。那么有了ListView、GridView为什么还需要RecyclerView这样的控件呢?整体上看RecyclerView架构

2017-05-22 14:36:31 475

原创 Android实现APP自动更新

当有更新时,会弹出一个提示框,点击确定,则在通知栏创建一个进度条进行下载,点击取消,则取消更新。1.创建布局文件notification_item.xml,用于在通知栏生成一个进度条和下载图标。relativelayout android:layout_height="fill_parent"android:layout_width="fill_parent"android

2017-05-22 13:25:13 906

转载 Android开源库V - Layout:淘宝、天猫都在用的UI框架,赶紧用起来吧!

前言V- Layout 是阿里出品的基础 UI 框架,用于快速实现页面的复杂布局,在手机天猫 Android版 内广泛使用让人激动的是,在上个月V- Layout终于在Github上开源! Github - alibaba - vlayout在五一假期我对V- Layout进行了详细分析,我将献上一份 V- Layout的使用攻略

2017-05-16 17:16:11 481

转载 Android性能优化全方面解析

内存优化关于性能优化我们可以不知道其他的,但一定要知道内存优化。因为内存泄漏可以Android的常客。那么什么是内存泄漏呢?内存不在GC的掌控范围之内了。那么Java的GC内存回收机制是什么?某对象不在有任何引用的时候才会进行回收。那么GC回收机制的原理是什么?又或者说可以作为GC Root引用点的是啥?或许有人听不懂我在讲啥。我们先来看张图。 当我们向上寻找,一直寻找到GC

2017-05-16 17:08:54 310

原创 Android 6.0: 动态权限管理的解决方案

Android 6.0版本(Api 23)推出了很多新的特性, 大幅提升了用户体验, 同时也为程序员带来新的负担. 动态权限管理就是这样, 一方面让用户更加容易的控制自己的隐私, 一方面需要重新适配应用权限. 时代总是不断发展, 程序总是以人为本, 让我们为应用添加动态权限管理吧! 这里提供了一个非常不错的解决方案, 提供源码, 项目可以直接使用.Android系统包含默认的授

2017-05-16 16:53:22 211

原创 android 6.0权限判断 音频 拍照 相册

/*------------------------------------------打开音频权限------------------------------------------------*/ if (PackageManager.PERMISSION_GRANTED == ContextCompat.checkSelfPermission(Context,android.Mani

2017-05-13 10:38:10 1563

转载 Android 开发小工具之:Custom Tabs

上周 Android Support 库偷偷摸摸更新了,里面多了几个小工具。今天来看看其中之一: Custom Tabs . 注意这个指的是 Chrome 浏览器的自定义多窗口 的意思而不是指 Android Tab 页。Chrome 浏览器现在已经成为 Android 原生系统的默认浏览器了。如果在您的应用中需要打开网页内容,之前的做法要么使用 WebView 或者 直接打开

2017-05-12 16:40:21 1111

原创 Android自定义View-水波纹progressbar

首先来看一看效果图:      先简要说一下这里需要涉及到的知识点:2D绘图基础path贝塞尔二阶曲线ValueAnimatorPorterDuffXfermode参考的文章:Path从懵逼到精通(2)——贝塞尔曲线绘制思路:绘制两段二阶贝塞尔曲线围成的波浪封闭图形,一段波浪的长度为屏幕宽度。水平移动绘制好的图形,形成波浪滚动的效果,并不断循

2017-05-12 11:09:03 739

原创 六款值得推荐的Android开源框架简介

1、volley   项目地址 https://github.com/smanikandan14/Volley-demoJSON,图像等的异步下载; 网络请求的排序(scheduling) 网络请求的优先级处理 缓存 多级别取消请求 和Activity和生命周期的联动(Activity结束时同时取消所有网络请求)   2、android-async-http  项目地址:https

2017-05-04 15:52:38 330

原创 Android动画全解

Android动画全解 在Android开发中经常会碰到动画,看到别的应用有很酷炫的应用时,总是想怎么去实现,但是每次都是发现感觉是知道怎么做的,实际做起来还是无从下手的感觉,究其原因还是Android动画方面的知识不全面,这几天利用空闲时间研究了下Android动画知识,当作学习日记,大家也好有所借鉴。Android主要分三类动画:Tween Animation、Frame Animat

2017-05-04 15:43:04 235

原创 [Android开发]Android更新UI的五种方式

Android更新UI的五种方式: 1.handler.post 2.activity.runOnUiThread 3.view.post 4.handler+Thread 5.AsyncTask下面来看下以下的例子import org.apache.http.HttpResponse;import org.apache.http.client.HttpClien

2017-05-04 15:39:10 361

原创 android中完全退出当前应用程序的四种方法

Android程序有很多Activity,比如说主窗口A,调用了子窗口B,如果在B中直接finish(), 接下里显示的是A。在B中如何关闭整个Android应用程序呢?本人总结了几种比较简单的实现方法。1. Dalvik VM的本地方法  android.os.Process.killProcess(android.os.Process.myPid())    //获取PID   S

2016-12-28 10:20:01 347

原创 Android 百分比布局库(percent-support-lib) 解析与扩展

一、概述周末游戏打得过猛,于是周天熬夜码代码,周一早上浑浑噩噩的发现android-percent-support-lib-sample这个项目,Google终于开始支持百分比的方式布局了,瞬间脉动回来,啊咧咧。对于这种历史性的时刻,不出篇博客难以表达我内心的激动。还记得不久前,发了篇博客:Android 屏幕适配方案,这篇博客以Web页面设计引出一种适配方案,最终的目的就是可以通

2016-12-27 11:13:41 453

原创 应用接入微信登录

接入微信登录:1、准备工作1.在微信开放平台https://open.weixin.qq.com/注册成为开发者。2.在“管理中心”中创建一个移动应用,需“应用名称、简介、及28*28和108*108的PNG图片各一张,且大小不超过300k”,点击下一步,需“应用官网地址,应用签名及包名”等信息,然后即可提交审核。 说明: 应用签名:可在微信开发平台的资源中心》》资

2016-12-26 13:05:55 821

Android 百分比布局库(percent-support-lib)

Android 百分比布局库(percent-support-lib)

2016-12-28

adroid解析XML三种方式

adroid解析XML三种方式

2016-07-14

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除