自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

阿甘正传

出来混,欠下的总是要还的。

  • 博客(116)
  • 资源 (14)
  • 问答 (2)
  • 收藏
  • 关注

原创 安卓电量检测工具Battery Historian的使用记录

安卓电量检测

2023-05-18 18:53:38 150

原创 【安卓】安卓设备实现wifi display解决方案

通过演示上面的Demo我们发现Wifi direct技术原理是底层实现了Scoket链接,它是可以替代蓝牙传输的技术实现,传输效率快蓝牙传输100倍,但是也有缺点就是功耗高(耗电)。安卓手机用户都知道我们的安卓手机有一个wifi直连功能,在点击设置–》WIFI–》更多Wifi设置–》Wifi直连;安卓手机默认有source端的api,只是没有暴露出来给开发者,这也是我们在Google开发者文档看不到的原因,我们如果想要调用,需要通过反射的方式(有技术实现难度,而且各个手机厂商的api有可能被定制化了)。

2023-02-28 21:35:58 2165

原创 Flutter混编开发之原生采用闲鱼Flutter_boost桥接踩坑记

Flutter混编开发之原生桥接踩坑记前言前言天下大势,分久必合合久必分。作为一名在安卓开发领域深耕过5年的程序员,深觉目前的跨平台开发必定是日后的趋势,因为跨平台解决了平台不统一导致的开发成本和维护成本翻倍的问题,而且如果程序有可能因为对各个平台进行适配导致功能或者UI不一致的问题也经常出现。前端最早踏入跨平台领域可以从Java虚拟机说起,Java虚拟机是一个跟平台无关的java程序运行环境,由java sdk提供。我们一般的步骤就是先在自己的电脑上安装好Java虚拟机,然后、再通过java虚拟机进

2021-09-14 18:52:46 1161

原创 Git命令: rebase 和 squash命令

rebase的用法普通合并代码容易产生merge提交如:把主干代码合到个人开发分支(有可能会产生一次merge提交)当前分支:master_zhang3执行:git merge master采用rebase把主干代码合到个人开发分支,并会把master_zhang3分支的提交拉到最近一个节点当前分支:master_zhang3git merge master --rebase比如master有提交点 1,2,3此时master_zhang3分支有 1,2,4结果:1,2,3,4

2020-11-05 18:05:19 3783

原创 安卓适配安卓9.0手机颜色变浅的问题

最近遇到一个手机适配问题,就是同样的一个app运行在安卓9.0手机上的显示和安卓其他设备上的颜色比较浅。因为项目是通过TextureView来绘制界面图像的,所以我只能先去了解这个类相关的Api,试图通过更改Windows的系统色来更改Textureview绘制的背景色,后面发现自己错误的理解的Textureview.我们做安卓开发最熟悉的就是View树,所有的安卓控件都继承自View,包括V...

2020-03-05 16:55:44 1042

原创 Java基础知识总结

String不是基本数据类型,是引用类型。 一旦一个string对象在内存(堆)中被创建出来,他就无法被修改。特别要注意的是,String类的所有方法都没有改变字符串本身的值,都是返回了一个新的对象。如果你需要一个可修改的字符串,应该使用StringBuffer 或者 StringBuilder。否则会有大量时间浪费在垃圾回收上,因为每次试图修改都有新的string对象被创建出来。 ...

2020-03-02 15:06:08 226

原创 安卓开发:第三方数据库(从GreenDao到ObjectBox)集成之路。

GreenDao官网:学习方法3步骤:第一找原生文档,第二看视频,第三看博客。ORM百度百科:对象关系映射(Object Relational Mapping,简称ORM)是通过使用描述对象和数据库之间映射的元数据,将面向对象语言程序中的对象自动持久化到关系数据库中。GreenDao:安卓针对你SQLite数据库的关系对象映射。提示:对于新的应用,我们推荐ObjectBox,一个新的比SQL...

2020-02-28 12:33:47 2025

原创 ViewPager设置页面缩放

在安卓开发中使用到ViewPager的地方特别的多,我们需要根据不同的需求设置ViewPager显示的方式。如下面的Viewpager如何实现呢? <android.support.v4.view.ViewPager android:id="@+id/vp_easy_view_pager" android:layout_width="mat...

2020-02-25 15:31:24 2070

原创 安卓集成友盟分享,显示设备无分享权限的问题解决。

App开发我们少不了需要集成分享功能,app引流和app拉新都需要用户分享。我们开发分享功能可以使用安卓原生的分享功能,但是会有局限性,我们无法分享多媒体类型,只是分享纯文本信息。使用第三方我们比较常用的有友盟和shareSdk。这里需要我们弄清楚一个概念,就是第三方平台的分享,其实有自己的分享功能代码,但是我们为了省时间,就会通过集成像友盟或者是ShareSDK这样的第三方平台进行开发,然...

2020-02-24 18:31:22 1307

原创 解决集成百度定位SDK获取不到定位信息的问题

我们很多场景都需要获取用户的定位信息,包括使用友盟统计,其实也会根据设备的定位信息来分析用户的使用行为。1)集成百度推送,需要打开百度开发文档,并且注册账户。2)根据开发文档下载基础定位的SDK。3)根据开发文档集成jar包之后,贴上基础定位的代码。4)这里需要获取应用的AppKey,这里需要根据App的keyStore来获取签名的Mc5值,这里就会把应用包名和Appkey进行关联。5)...

2020-02-24 18:11:01 1244 1

原创 安卓解决包冲突问题。

在安卓开发中,当我们项目中依赖的远程包里面有一模一样的包存在时就会导致包冲突,我们常用的解决方式就是删除任意包里面的包的方式解决冲突。android studio也告诉了我们如何添加编译依赖项,我们只要按照规范来操作就可以了。排除不需要的依赖项的写法:dependencies { implementation('some-library') { exc...

2019-12-24 11:42:59 3576 1

原创 安卓网络框架搭建答疑

在安卓开发中,我们从之前使用安卓6.0的HttpClient,到使用HttpUrlConnection替代HttpClient,再到使用各种第三方网络请求框架实现网络请求。网络请求比较热门的第三方开源框架有HttpUtils、Vollery、OkHttpUtils等。但是目前比较火的还是网络请求的混合三打Rxjava+Okhttp+Retrofit。而且我们用过的都知道这三个框架各有各的职责,相辅...

2019-12-24 09:47:59 211

原创 解决安卓手机竖向拍照后,图像横屏展示的问题。

安卓手机调用系统的相机拍照之后,本来应该是根据你手机的拍照方向,预览照片应该是根据你手持手机的方向不一样而不一样。但是现在就有一个问题,华为手机是正常的,但是像Vivo和小米手机跳用系统的相机拍照之后,显示的预览图是横屏的。首先试着解决Activity的显示方式只能是竖屏:android:screenOrientation="portrait"发现加上之后华为是可以正常显示的,但是小米和v...

2019-12-18 13:22:05 14941

原创 ScreenMatch屏幕适配:Iphone6的切图如何适配Android?

之前进行安卓开发的时候遇到一个屏幕适配的问题:Ui给的图片是以iphone6(1920*1080)尺寸做的设计稿,界面是一个弹窗,弹窗背景是一张整图。如果以整图为背景,然后在上面进行控件布局就会出现控件会有偏移的问题。例如上图里面的用户头像,背景图限定了它的显示位置必须是在小黑框内,如果你设置ImageView的位置不正确的话,就会有偏差导致头像无法正确的先是在背景图限定的小黑框内。但是目前遇...

2019-12-13 14:06:11 447

原创 Android面试必备知识点

安卓面试最主要的就是四大组件:Handler异步消息机制:意义:Handler是为了实现线程间通信的。1)在使用handler的时候,在创建handler的线程需要维护一个唯一的Looper对象, 每个线程对应一个Looper,每个线程的Looper通过ThreadLocal来保证。2)Looper对象的内部又维护有唯一的一个MessageQueue,所以一个线程可以有多个handl...

2019-11-19 16:59:48 189

原创 Java必背基础面试知识点

昨天向公司提交离职申请通过之后,内心还是很不安的,毕竟目前除了有一家上市公司给我发了offer之外(路程太远,不打算去),其他的都是还不确定的,而且现在前前后后面试也快一个月了,现在才拿到一个offer是有点不正常的,而且现在马上就要到年底了,我想很多公司都不会再招聘新人了吧。Java面试问到的基础知识点:Static关键字的作用和意义:1)static修饰的成员变量和方法,从属于类;普通变...

2019-11-14 17:43:46 345

原创 安卓仿支付宝信用评分体系动画图

安卓开发中,我们少不了自定义控件,现在有一个需求,就是根据学生的阅读六要素建立类似支付宝信用评分体系的动画效果,实现效果如下图:Demo的成功完成是借鉴下面这篇博客:Android 仿支付宝9.0芝麻信用分效果,项目代码已经提交到本人Github,有兴趣的可以下载,欢迎Star!package com.fenjiread.learner.activity.widget;import an...

2019-11-08 16:46:36 609

原创 Pytharm通过SSH远程链接服务器上传项目代码

前言Python开发后发服务可以使用Tornado,Tornado是一个Python Web框架和异步网络库,最初由FriendFeed开发。通过使用非阻塞网络I / O,Tornado可以扩展到成千上万的开放连接,使其非常适合 长时间轮询, WebSocket和其他需要与每个用户建立长期连接的应用程序。#coding=utf-8import tornado.ioloopimport t...

2019-09-29 17:57:10 228

原创 android studio设置Flavor的dimension注意细节问题。

前言在安卓开发中,我们都知道android studio的多渠道打包功能使用起来非常的快速、便捷。但是我们设置多渠道的时候需要一个问题:选中项目–》右键–》Open Module Settings异常显示是我们的渠道包设置没有设置对应的Flavor导致异常,这个异常虽然不会影响我们正常的运行和打包。所以你如果没时间去解决也是可以的。之前我也搞不懂到底要怎么设置这个Flavor才能不报错,后...

2019-09-20 18:39:25 6642

原创 前端:和JavaScript一样的后端脚本语言Php学习总结

前言web前端学习到了一个阶段,目前正在学习前端的异步请求框架Ajax,学习这个框架需要了解php的基本语法和使用。下面这篇博客就是W3cSchool Php学习的知识点总结,希望可以能快速了解这门脚本语言。PHP("PHP Hypertext Preprocessor" 的首字母缩略词) 是一种创建动态交互性站点的强有力的服务器端脚本语言。PHP 脚本在服务器上执行,然后向浏览器发送回纯...

2019-09-18 15:52:11 1357

原创 前端知识学习总结篇(一)

前言前端学习有一段时间了,对前端的一些知识点也了解的差不多了。Html5新增了许多的标签定义需要进行学习,Css3也有许多的属性包括标签的动画都是可以使用Css3的属性来进行定义的,这样就可以很方便的实现动画效果,以上就是Html5和Css3的学习重点。JavaScript脚本语言可以获取Html的标签进行内容、样式的改变、设置点击事件进行页面跳转等。然后就是Dom文档有自己默认的布局方式是从...

2019-09-18 13:38:37 319

原创 前端开发框架:Ajax的基本入门和使用。

PHP的常见语法PHP代码执行方式:在服务器端执行,然后返回给用户结果。如果直接使用浏览器打开,就会解析为文本。意思是说,需要浏览器通过 http请求,才能够执行php页面。这里只列举常用的PHP语法,更为详细的语法教程可以查阅 api 文档。第一段 php 代码将 WampServer 跑起来,在D:\wamp\www下新建一个1.php文件,代码如下:1.php:&...

2019-09-17 18:18:37 782

原创 前端开发:Bootstrap开发框架

1)Bootstrap入门。Bootstrap官网网站官方网站:https://getbootstrap.com/中文网站:http://www.bootcss.com/Bootstrap 库的下载这里我们以 Bootstrap V3.3.7 为例。进入中文官网,下载 用于生产环境的 Bootstrap,如下图所示:下载之后,解压 bootstrap-3.3.7-...

2019-09-17 17:13:34 7179

原创 前端开发:Html5和CSS3

1)Html5详解。2)CSS3选择器详解。3)CSS3属性详解(图文教程)。什么是 HTML5HTML5并不仅仅只是做为HTML标记语言的一个最新版本,更重要的是它制定了Web应用开发的一系列标准,成为第一个将Web做为应用开发平台的HTML语言。HTML5定义了一系列新元素,如新语义标签、智能表单、多媒体标签等,可以帮助开发者创建富互联网应用,还提供了一些Javascript API...

2019-09-16 19:11:01 2963

原创 前端开发框架:jQuery

前言在安卓开发中,我们知道一个好的开源框架可以帮我节省非常多的开发时间成本,我们需要实现一个功能,只需要熟练这个开源框架的使用就行,有时间则需要熟悉开源框架的有源码。同样的jQuery是前端开发人员必须了解和掌握的一个开源框架。1)jQuery的介绍和选择器详解。jQuery入口函数与js入口函数的区别:区别一:书写个数不同:Js 的入口函数只能出现一次,出现多次会存在事件覆盖的问...

2019-09-16 18:05:40 1416

原创 JavaScript:JavaScript特效

前言作为一名5年工作经验的安卓开发人员,我们知道安卓除了布局方式需要熟悉掌握之外,还需要熟练掌握的就是动画效果的实现。作为大前端,客户端和用户的交互不可避免,为了掌握Javascript这门脚本语言,所以我们需要熟练掌握JavaScript的动画实现。1)JavaScript动画:offset和匀速动画详解(含轮播图的实现)。JS动画的主要内容如下:1、三大家族和一个事件对象:- 三...

2019-09-16 15:57:46 491

原创 动态创建DOM元素的三种方式

动态创建DOM元素的三种方式document.write(); 不常用,因为容易覆盖原来的页面。innerHTML = (); 用的比较多。绑定属性和内容比较方便。(节点套节点)document.createElement(); 用得也比较多,指定数量的时候一般用它。1、方式一:document.write();这种方式的好处是:比较随意,想创建就创建,可以直接在wr...

2019-09-16 14:47:30 9733

原创 Css-style属性的设置和获取

style属性的设置和获取在DOM当中,如果想设置样式,有两种形式:className(针对内嵌样式表)style(针对行内样式)这一段就来讲一下style。需要注意的是:style是一个对象,只能获取行内样式,不能获取内嵌的样式和外链的样式。例如:<!DOCTYPE html><html lang="en"><head> &...

2019-09-12 17:00:10 2391

原创 JavaScript-访问关系的函数封装成工具类

访问关系的函数封装(1)函数封装新建一个文件名叫tools.js,然后在里面封装访问关系。代码如下。tools.js:/** * Created by smyhvae on 2018/01/28. */function getEle(id){ return document.getElementById(id);}/** * 功能:给定元素查找他的第一个元素子节点,...

2019-09-12 16:59:26 147

原创 JavaScript实现Tab栏切换

JavaScript实现Tab栏切换京东网页上,可以看到下面这种tab栏的切换:我们把模型抽象出来,实现一下。举例引入:鼠标悬停时,current元素的背景变色本段我们先举一个例子,因为这里用到了排他思想(先干掉 all,然后保留我一个)。对于理解tab切换,很有帮助。完整的代码实现:<!DOCTYPE html><html><head lang...

2019-09-12 16:45:55 932

原创 DOM操作练习

DOM操作练习举例1:点击按钮时,显示和隐藏盒子。代码实现:<!DOCTYPE html><html><head lang="en"> <meta charset="UTF-8"> <title></title> <style> button { ...

2019-09-12 16:44:05 1650

原创 02-CSS基础练习:JD首页的制作(快捷导航部分)

02-CSS基础练习:JD首页的制作(快捷导航部分)我们在上一篇文章中制作的网页最顶部的导航,是属于网页导航。本文中,Banner图上方的导航,叫做快捷导航(shortcut)。##快捷导航的骨架我们先制作快捷导航的骨架。如下图所示:上图中,shortcut-nav-menu-all和shortcut-nav-menu-one都是属于shortcut-nav-menu部分,只不过,后者...

2019-09-12 16:42:19 500

原创 前端基础练习-实现JD顶部导航

前言京东是典型的电商类网站,学习这个网站的制作比较有价值。我们准备用WebStorm进行开发。京东首页的截图为:http://img.smyhvae.com/20180119_1653.jpg页面规划:新建一个空的工程我们首先新建一个空的工程:CSS初始化(基本样式)京东网站有一些基本样式,在各个页面中都要用到:(将这些基本样式copy到css.base里面去)base.css中的...

2019-09-12 16:39:54 2261 1

原创 Mac安装虚拟机,实现三台虚拟机联网

在Mac电脑我们使用VMWare Susion来搭建虚拟机环境,虚拟机搭建过程也比较简单。之前安装成功之后,结果却把登录账户和密码忘记了, 所以现在需要重新安装一下虚拟机,安装成功虚拟机之后,还需要创建三台配置相同的虚拟机,然后设置这三台虚拟机联网互通。...

2019-09-12 16:27:42 1158

原创 使用Vmware Fusion搭建三台虚拟机实现联网及Linux常用命令

作为一名安卓开发,对虚拟机的使用也不是很熟,自从买了一个价值3千的课程之后才开始真正学习大数据。但是这么长的学习时间下来,感觉根本没有学到什么。所以现在想实现大数据的基本环境搭建:实现三台虚拟机的联网互通,这里说的联网互通也就是三台虚拟机直接可以项目访问彼此。因为我用的是Mac电脑,所以我使用的虚拟机平台工具是Vmware Fusion,然后下载一个虚拟机镜像。安装上之后需要配置用户名和密码,这...

2019-09-12 16:27:13 1134

原创 使用Python脚本实现web页面自动登录

学习Python语言就是需要学习使用它来解决很多重复性的开发操作,从而解放我们的双手,节省很多重复操作的时间,提高开发效率。下面我们就用Python脚本来实现一个简单的登录网站的操作。首页我们需要先注册一个网址的账户和密码,还有就是网址链接。编写下面的Python脚本,来实现网站的自动登录。from selenium import webdriverimport timedriver ...

2019-09-12 16:26:48 21465 1

原创 Web前端的学习之路

前言最近好久都没有写博客了,可能是因为公司项目业务需求变少,也可能是我个人心里的一些放松。从公司5月份裁掉安卓客户端负责人之后,我就顺利成了安卓的负责人,但是薪资待遇却和之前一样没有变化,然后又不敢跳槽,才会出现现在这种学习热情底下,每天昏昏沉沉的感觉。作为一名安卓开发,有那么多年的工作经验,但是有一些技术知识却只会使用,在面试的时候却无法真正的说清楚,这就会导致面试过程的吃亏。所以我打算在目...

2019-09-12 16:24:34 256 1

原创 JavaScript:基础语法进阶

前言上一篇“JavaScript语法”,我们学习了JavaScript的5种基本数据类型和引用类型。这个和Java基础类似。还有就是我们知道JavaScript除了ECMA标准外,还有Dom文档的操作Api和Bom浏览器的操作Api。还有我们知道JavaScript语法本身也有很多和Java不一样的地方,创建对象的方式可以使用字面量的方式,包括操作对象的属性使用obj.属性 = xxx,也和ja...

2019-09-12 16:21:59 346

原创 Javascript:基础语法。

前言在学习Web开发中,我们从前期的Html标签学会了如何在网页上画图,使用Css给网页标签进行布局排版之后,我们接下来就需要给网页标签设置点击事件等,来实现网页标签和用户之间的交互。1)JavaScript语法详解:JS简介&变量。字面量:数字和字符串“字面量”即常量,是固定值,不可改变。看见什么,它就是什么。简单的字面量有2种:数字、字符串。在JS中一共有六种数据类型:...

2019-09-11 19:08:50 828

原创 前端开发实战:实现一个网页计算机。

前言作为一名前端初级开发,我需要一些小项目进行实战训练,才能了解自己是否真正的掌握了前端开发技术。下面就来实现一个网页计算机的功能。需求:1)网页界面有0-9十个数字按钮。2)计算器可以实现加、减、乘、除四种运算。3)计算机界面显示在网页中间,计算结果显示在上面。4)计算机需要有复位功能键。...

2019-09-11 14:44:36 1838

工作中需要用到的软件工具

工作中需要用到的软件工具。

2023-06-02

安卓apk keystore签名代码获取

通过反射方式获取安卓 apk包的签名信息,通过日志打印的方式获取 apk keystore 或者jks文件的签名信息。

2023-03-07

安卓性能测试工具.zip

安卓性能测试工具

2023-02-02

程序崩溃时往往让人很恼火,而且测试的话无法实时的打印日志,所以希望程序崩溃之后可以跳转到一个错误信息页面,最好是程序崩溃之后重启

1、程序崩溃日志在程序中显示。 2、程序崩溃之后可以立即重启,不需要再点击程序。

2022-03-03

apksSignTools.zip

一键加固apk,且签名

2021-12-27

渠道写入工具.zip,一键写入渠道号

传统的打包工具需要签名,然后打包,最后加固。使用该工具可以一键签名打包、并且使用邦邦加固加固好apk.

2021-12-27

webSocketDemo.zip

Java项目把Excel表格数据转成Json字符串数据。

2021-02-04

日志格式化输出打印工具类.rar

这是一个基于Okhttp网络请求框架的网络拦截器,代码是用了开源项目的大神打印代码,输出很好用的网络日志。使用方式:放入你使用的okhttp网络请求框架中,然后通过添加拦截器的方式添加拦截,格式化打印日志。

2020-08-18

网络日志拦截器输入格式化打印工具类.rar

这是一个Okhttp网络日志格式化打印的工具类,原理就是添加网络请求的拦截器格式化打印输入日志,节省和后台进行接口联调的时间。

2020-08-16

U-ShareSdkDemo.rar

集成友盟SdK发现里面又许多的不想要的功能,导致无法抽取分享功能。按文档集成却总是无法正常的唤起微信分享,后面就自己写了一个Demo,然后改成友盟的包名和签名,最后又下面这个Demo。Demo是最新的分享sdk,如果无法正常使用,需要下载友盟的官方Demo,运行之后试用分享之后就可以正常使用了,可能是签名占用的问题。

2020-02-22

Python使用Tornado上传图片到本地服务器.zip

项目是使用tornado模块实现图片上传到本地虚拟服务器的Python项目,主要是完成了上传功能和展示图片的功能,使用可以查看博客说明https://mp.csdn.net/mdeditor/101699797

2019-09-29

android studio 插件

如果你想节省开发时间,不进行不必要的findviewById代码的编写,就使用这个插件,集成到Studio中就可以了,使用右键》Convert android layout ,然后粘贴到你的代码中就可以了。

2016-10-09

TextSwitcher实现文字上下左右滚动

TextSwitcher是系统的原生类,调用它实现文字滚动效果非常流畅。

2016-06-21

构建者模式、回调和观察者设计模式

个人针对构建者设计模式、回调和观察者设计模式写的一个Demo,方便大家理解编程设计思想,1分算是大家的鼓励分,希望可以给大家带来方便。

2016-03-26

第三方支付-融托付的集成SDK和Demo

融托付是第三方的支付方式,类似于微信和支付宝,但是它可以使用融托付的刷卡器进行刷卡,里面有具体实现方法,谢谢大家支持。

2016-03-08

安卓手势密码的具体实现Demo

手势密码的=具体实现类,外国人写的,我主要理解了实现集成,谢谢大家的支持。

2016-03-08

Java动态代理和Java反射的Demo演示

Java动态代理和Java反射的Demo演示,通俗易懂。

2015-11-06

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

TA关注的人

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