自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

初学者

人生不如意事十之八九,可与人言无二三!知我者,谓我心忧,不知我者,谓我何求?

原创 Android 滑动渐变背景Toolbar、点击置顶ScrollView

效果图如下:

2020-08-03 10:29:41 11

原创 Android 百度地图SDK 自动定位、标记定位

先看效果图,如果不是你想要的,也就不浪费你时间了,这样对大家都好。如果是你满意的那样,我们就可以开始写了,首先创建一个名为MapDemo的项目。打开AndroidManifest.xml,复制你的包名然后进入百度地图开放平台,没有注册的小伙伴先注册,已注册的就直接登录,登录进去之后找到控制台→我的应用→创建应用点击之后进入,填写相关资料输入了应用名称、选择了应用类型和启用的服务,输入了包名。还差开发版和发布版的SHA1了① 获取开发版SHA1鼠标点击右侧边栏的Gradle→ app→Ta

2020-07-28 13:59:01 104

原创 Error:Could not download ecj.jar : No cached version available for offline mode

最近重新打开老项目时,发现要配置一些东西,结果半天没有配置完,我寻思是网络问题,然后就换了一个网络,然后就报错了。错误如下Error:Could not download ecj.jar (org.eclipse.jdt.core.compiler:ecj:4.4): No cached version available for offline mode翻译出来的结果是错误:无法下载ecj.jar(org.eclipse.jdt.core.compiler:ecj:4.4):离线模式没有可用的缓存版

2020-07-27 16:44:58 42

原创 Android 天气APP(二十)增加欢迎页及白屏黑屏处理、展示世界国家/地区的城市数据

前言本来这一篇文章应该和上一篇放到一起的,但是考虑到篇幅的问题,我就分成两篇文章了,我真的很怕读者看的时候失去动力,动不动就七八万字的博客,看着就害怕。虽然主要是代码比较多,中间穿插一些讲解而已。开始吧!正文我相信很多APP都会有这个欢迎页的,也就是启动页面,常规的就是一个页面展示APP的定位,还有就是广告之类的。这个页面更多的功能其实是对APP冷启动和数据的处理,相当于一个缓冲区。先来看一下白屏黑屏的效果可以看到虽然这个GIF很多,白屏和黑屏的时间也很短,一刹那间就过去了,但这个就是细节啊,你不

2020-07-23 18:39:20 101

原创 Android 天气APP(十九)更换新版API接口(更高、更快、更强)

上一篇:Android 天气APP(十八)常用城市前言近段时间,和风天气上线了新的API版本,并且给所有的和风开发者发送了邮件,好像是7月10号,哪个时候我去看了一下,发现改动还是有的,和风天气V7版开发API文档,并且提到之前的版本也就是和风天气S6版开发API文档这个S6的版本会在2020年12月31日下线且不再提供技术支持,我相信之前看到文章的朋友都是用的S6的API接口,虽然离下线还比较早,但是尝试新鲜的API也是极好的,本来之前就想写关于API改动变化的,但是天不随人愿,工作上增加了任务,无法

2020-07-23 18:37:49 111

原创 Android 读取csv格式数据文件

前言什么是csv文件呢?百度百科上说 CSV是逗号分隔值文件格式,也有说是电子表格的,既然是电子表格,那么就可以用Excel打开,那为什么要在Android中来读取这个.csv格式的文件呢?因为现在主流数据格式是采用的JSON,但是另一种就是.csv格式的数据,这种数据通常由数据库直接提供,进行读取。下面来看看简单的使用吧正文首先还是先来创建一个项目,名为ReadCSV准备.csv格式的文件,点击和风APILocationList下载ZIP,保存到本地,然后解压,这个时候在你的项目文件中新建

2020-07-20 10:35:08 82

原创 Android 自定义View 画圆(奥运五环)
原力计划

前言你会画画吗?你会写代码吗?你会用代码画画吗?正文自定义View,实际开发过程中,因为涉及用户体验的时候,UI通常会弄一些骚操作出来,这个时候就有两个选择,你是用GIF呢?还是自己自定义一个呢?用GIF当然会增加你的APP的体积,而自定义View难度也不小,于是很多人都会选择用GIF先解决这个问题,后面再去自己自定义,然后就没有然后了(PS:曾经我也是这样的一个人,但是,人是会变的,小老弟),好了,说了一些废话,下面进入主题,开始画画。首先思考一个问题,用什么来画?废话,当然是纸和笔啊!那程序里面

2020-07-14 16:44:21 80

原创 Android 蓝牙开发(扫描设备、绑定、解绑)
原力计划

前言公司最近给我丢了一个蓝牙开发的项目,不了解怎么办呢,那当然是从最基础的开始了,所以这里相当于做笔记了。正文话不多说,创建一个项目才是首要的任务,创建一个名为MyBluetooth的Android项目...

2020-07-03 11:01:15 1728 5

原创 Android 天气APP(十八)常用城市
原力计划

上一篇:Android 天气APP(十七)热门城市 - 国内城市前言常用城市对于那些经常在外面出差的朋友来说相信是不陌生的,因为涉及到在不同城市之间居住,所以对于其他城市的天气是比较在意的,假如我要去一个城市的话,肯定要先了解天气怎么样,不然过去之后身体都受不了,何谈工作和生活呢,所以说我们需要在去之前做好准备工作,未雨绸缪,说实话这个功能是应该早就要有的,所以为了提高可用性,这里增加常用城市的功能。正文 Commonly used city① 创建Activity既然是一个新的功能当然是通过创建

2020-06-29 16:49:16 980

原创 Android LitePal的简单使用
原力计划

前言为了丰富这个对于Android SQLite的使用,特别写了这篇文章,也算是做一个笔记吧。效果图正文LitePal是Android中比较轻便的开源数据库框架,是郭霖大神写的,本文只做最简单的使用。① 创建项目然后是导入一些依赖库,其中包括LitePal,还有一些是为了方便展示数据的。② 配置项目在app下的build.gradle中添加配置 compileOptions {//指定使用的JDK1.8 sourceCompatibility = 1.8

2020-06-28 16:07:16 365

原创 Android 天气APP(十七)热门城市 - 国内城市
原力计划

上一篇:Android 天气APP(十六)热门城市 - 海外城市前言在上一篇做了国外的热门城市数据的展示,这一篇就简单一些,增加国内的热门城市。效果图正文① 修改API在ApiService中修改hotCity这个接口,将固定地址里面的group分离出来,作为请求参数。 /** * 热门城市(包含海外和国内) */ @GET("/top?key=3086e91d66c04ce588a7f538f917c7f4&number=50&lang=zh")

2020-06-24 17:05:59 331

原创 Android 科大讯飞语音识别(详细步骤+源码)
原力计划

前言语音识别在现在的APP中是常见的,但是通常小的项目中我们不会去费心思自己去做这一块的业务功能开发,常规的是接入第三方的SDK快速实现功能,比如百度、讯飞之类的,百度语音识别之前我已经写过了,本着雨露均沾的原则的,写这篇讯飞的SDK对接步骤,开始吧~正文首先呢,你先去注册讯飞的开发者账号,点击讯飞开放平台前往注册,注册好之后你可以选择实名认证或者不认证都可以,然后登录进入控制台或者我的应用创建一个应用填写信息然后提交点击这个应用名称查看详细信息右边的是对接过程需要用到的值,APPI

2020-06-23 17:55:52 404

原创 Android 触摸屏交互之手势监听
原力计划

效果图前言2020年,智能手机大行其道,相信不会还有人用着老式的按键手机了吧,而智能手机最大的交互就是手机屏幕,其次的就是音量操作、生物识别(指纹+人脸+瞳孔)、说白了用的最多的是手机的屏幕,屏幕与用户之前进行交互,比如打开一个app你是不是要点击屏幕上某一个?有人说我可以用语音去打开,但是你没有想过语音其实只是帮你执行了点击,在手机上不管是玩游戏还是看电影或者是搞学习,都是要使用手机屏幕的,所以你知道屏幕交互有多么重要吗?正文屏幕的交互当然首先是触摸,说道触摸就是有一个手势监听,这个是Googl

2020-06-19 11:22:25 331

原创 Android Glide加载网络图片不显示,但用网页打开又正常显示
原力计划

前言最近做Demo比较多,之前在搭网络框架的时候遇到了图片加载的问题,因为我以前的框架中加载网络图片是没有问题,这次居然出问题,但是其实也不难解决吧。异常问题报错有两个① Failed to find GeneratedAppGlideModule. You should include an annotationProcessor compile dependency on com.github.bumptech.glide:compiler in your application and a @

2020-06-16 17:01:39 298

原创 Android 天气APP(十六)热门城市 - 海外城市
原力计划

前言反正国内的天气也做好了,不妨做一下做一下国外的天气,国外的天气数据的展示,我将重新设计一套UI,区别于国内的天气UI,开搞~正文既然要访问国外的天气,那么肯定不能像国内这样,省、市、区/县这样来详细展示,所以只展示热门的城市,因为我相信那些去国外玩的朋友肯定也不会去一个不知名的地方吧,不然回来之后你怎么炫耀呢?① API地址和风天气有这方面的API,白嫖侠申请出战!地址如下https://search.heweather.net/top?key=3086e91d66c04ce588a7f53

2020-06-12 18:05:28 237 2

原创 Android Studio 安装配置教程 - MacOS(详细版)
原力计划

前言因为之前做了在Window下安装AS的教程,有人和我说也做一个在Mac下安装的教程,这样会全面一点,我觉得也是,于是就有了下文。然后首先是安装程序,这里默认不翻墙,使用国内的,下载地址有两个,一、安卓中文组下载Android Studio下载地址-安卓中文组,最新版本目前是3.5.2这个版本相对来说比较稳定,但不是最新版的二、谷歌中国下载Android Studio下载地址-谷歌中国,最新版本目前是4.0,这个版本新增了很多牛逼的功能,但是手上有工作项目的不要去轻易尝试,BUG是肯定会有

2020-06-10 15:46:33 892

原创 Android 百度语音识别(详细步骤+源码)
原力计划

前言因为项目中用到了语音识别的技术,但是项目源码我不能公开,所以,重新写一个简单的集成教程,不喜可不看,不做键盘侠,文明你我他。效果图识别结果最终效果源码地址正文下面是详细步骤,不漏过任何一个细节,力求让你一步到位① 创建平台应用既然使用了百度语音,自然免不了要注册该平台的账号,否则凭什么让你使用,点击百度智能云进入,没有账号的可以先注册账号,注册应该就不用我讲解了吧?这里默认都有账号了,然后登录然后左侧导航栏点击找到语音技术然后会进入一个应用总览页面,然后点击创建应用

2020-06-09 15:06:22 489 7

原创 Android 天气APP(十五)增加城市搜索、历史搜索记录
原力计划

上一篇:Android 天气APP(十四)修复UI显示异常、优化业务代码逻辑、增加详情天气显示前言看这篇文章之前,你是否是一路看过来的呢?如果你单独看着一篇的话,有些内容你可能看不懂,所以我建议你一篇一篇的看,这是第十五篇文章了,前面还有十四篇,建议先了解一下,传送门:天气APP-专栏在我思虑良久之后决定加一个城市的搜索功能,反正有现成的API,不用白不用,我白嫖侠是不放过任何一个可以白嫖的机会。正文城市搜索,我是打算新建一个Activity来专门做这个功能,继续在原来的MainActivity

2020-06-06 20:56:02 1727 10

原创 Android 在一个APP里打开另一个APP
原力计划

前言不知道你们有没有注意过,每次打开一些软件的时候都会有广告引导页,有时候手滑点到了,会有进入手机上的另一个APP,这有没有引起你的注意呢?正文为了测试这个功能,首先要创建两个项目,然后运行起来都安装在你的手机上,这里为了方便了解,取名就是应用A和应用B,流程就是A应用里面打开B应用。首先当然是创建项目了DemoADemoB创建好之后,别的先不管,都在手机上安装一下再说① 打开另一个APP接下来在DemoA的MainActivity里面写一个按钮,用于点击之后打开DemoB应用 &

2020-06-06 10:54:05 672 2

原创 Android 自定义加载动画Dialog弹窗
原力计划

效果图首先是创建弹窗的背景这是上面用到的以shape_bg_5_blue.xml为例,其他的三个无非就是里面的颜色不一样而已<?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android"> <corners android:radius="5dp"/> <solid android:co

2020-06-02 16:38:50 473 12

原创 Android获取APP的版本号和版本名

其实也就是一个简单的工具类,实际开发中我也用过很多次,代码如下:获取版本信息 tvVersionCode.setText("版本号:"+APKVersionInfoUtils.getVersionCode(this)); tvVersionName.setText("版本名:"+APKVersionInfoUtils.getVersionName(this));运行效果图:工具类代码import android.content.Context;import android.conte

2020-06-01 14:44:23 271

原创 Android 天气APP(十四)修复UI显示异常、优化业务代码逻辑、增加详情天气显示
原力计划

上一篇:Android 天气APP(十三)仿微信弹窗(右上角加号点击弹窗效果)、自定义背景图片、UI优化调整前言在上一篇文章中增加了自定义背景的功能的同时也遗留了一些问题,为阅读者带来的不便,敬请谅解,在这一篇中将会优化这些问题,同时优化业务逻辑代码,做到用最少的代码量办最多的事情,同时对UI的用户体验进一步提升,增加天气详情数据的显示。正文首先是修复之前问题吧,这个问题我本身是知道的,不过因为工作时间的原因,近期就没有来得及改这个问题,但我又不想在原来的第十三篇文章中进行修正,因为有问题很正常,正

2020-05-28 11:58:37 969

原创 Android RecyclerVIew列表使用 (编辑、单选、全选、删除、动画效果+附源码)
原力计划

前言眼下都2020年了,你不会还在使用ListView吧?正文因为最近写的一个项目里面有关于列表的编辑相关的功能,其实也是类似与腾讯视频的观看历史的列表操作,你可以先尝试一下,写这个主要是业务逻辑要清晰,否则你很容易就会陷进去,走死胡同的。效果图如下:源码如下:迫不及待想要自己运行在AS中的小伙伴可以直接下载或者克隆,打开即可,想了解具体开发流程和详细的业务逻辑的小伙伴,可以继续往下看,本章很长,请在流量和时间充足的前提下观看,如有问题,评论即可,我会尽快解决,多说无益,开搞~开发① 新建项

2020-05-27 10:15:39 345

原创 Android 扫描二维码(使用华为统一扫码服务 + 附源码)
原力计划

前言现在无论什么APP都会有一个扫一扫的功能,网络上的各个软件的扫码功能也都大同小异,当然你想要自定义属于自己APP的扫码界面及功能的话,还是要花一番功夫的,不过做Demo,用第三方的就可以了。正文华为统一扫码服务集成使用步骤效果图Demo源码① 创建Android项目创建好了。②配置HMS SDK的maven仓库地址打开工程目录下的build.gradle文件a. 在allprojects ->repositories里面配置仓地址allprojects {

2020-05-22 17:26:13 967 4

原创 搞定Android Studio cannot open this project, please retry with Android Studio 3.6 or newer

This version of Android Studio cannot open this project, please retry with Android Studio 3.6 or newer对于Android开发来说,GitHub上开源的项目是必不可少,因为你不能什么都自己写,最近用到了播放器,找到了饺子播放器,这个库可以高度的自定义,基本能实现你想要的任何功能,前提是你要熟悉才行,然后就是下载源码到自己的Android Studio打开了,但是提示了一个错误,This version of

2020-05-22 10:53:42 383

原创 Android 对接极光推送
原力计划

前言发现现在的Android开发中很少有不用第三方SDK的,为什么呢?就是因为实现一个功能的速度快呀,比如说客服、聊天、直播等一些功能,用第三方SDK可以最快解决问题,我在实际开发中也对接过很多SDK,不过仔细写过这方便到的博客,前段时间我写了一个关于udesk SDK的文章,实现IM的,写的不算太详细,不过你如果看了也够用了,好了,进入正文。正文今天要对接的这个SDK是极光系列中的推送服务SDK,当然极光还有其他的服务,进入极光官网了解一下,我这里放个图说明一下主要看我标注的这个,因为主要讲这个

2020-05-18 18:18:55 245

原创 Android 天气APP(十三)仿微信弹窗(右上角加号点击弹窗效果)、自定义背景图片、UI优化调整
原力计划

前言自定义背景,做这个功能的原因是因为一些人觉得必应的每日一图并不好看,想要手动上传自己手机里的壁纸作为背景,并且应用也要有自带的壁纸供用户选择。正所谓有需就有求,这是亘古不变的道理,第三个就是UI的优化,这次我是打算把切换城市的弹窗挪到二级菜单里面,右上角做一个一级菜单列表,这个列表暂定功能为切换城市和切换背景,这样可以使主页面的代码量减少一些,...

2020-05-09 16:19:11 460

原创 Android 天气APP(十二)空气质量、UI优化调整
原力计划

上一篇:Android 天气APP(十一)未来七天的天气预报、逐小时预报、UI优化前言这个空气质量包含的就是一些常规的空气指数,比如PM2.5、PM10等数据,相信任何天气APP都会有这些数据,所以我也加上去吧,另一个是自定义背景,做这个功能的原因是因为一些人觉得必应的每日一图并不好看,想要手动上传自己手机里的壁纸作为背景,并且应用也要有自带的壁纸供用户选择。正所谓有需就有求,这是亘古不变的道...

2020-05-05 23:54:07 364 5

原创 Android 天气APP(十一)未来七天的天气预报、逐小时预报、UI优化
原力计划

上一篇:Android 天气APP(十)下拉刷新页面天气数据如果你看到这里那么你应该看过前面十篇文章了,这是第十一篇,其实写作的原意,并不是我想分这么多章节的,但是不得不分章节,我不能只考虑自己不考虑阅读的人,试问,我这里有一篇20万字的博客,你要不要看一下呢?你可能会望而却步吧,从而失去兴趣,故分章节,但请放心,我不是标题党,也不做无意义的分章节,标题肯定是要对应里面的内容的,现在有些博主写文...

2020-04-29 14:51:31 556 3

原创 Android 接入udesk SDK实现IM
原力计划

Demo源码地址步骤1.账号注册略2.创建应用获得APP Id和App Key创建好之后可以获得应用的APP Id和App Key,这两个值是要在Android中配置的3.下载SDK点击Android SDK使用教程,进入接口文档的页面点击GitHub的地址进入点击androidX 版本地址下载好之后解压到本地,然后找到UdeskSDKUI,这是这个SDK文件中的一个...

2020-04-16 16:27:22 217

原创 Android 天气APP(十)继续优化、下拉刷新页面天气数据
原力计划

下拉刷新页面天气数据根据小伙伴的评论,我增加了页面数据的下拉刷新,首先在修改布局,可以看到我在androidx.core.widget.NestedScrollView的外层嵌套了一个com.scwang.smartrefresh.layout.SmartRefreshLayout(PS:依赖中引入的下拉刷新框架)和com.scwang.smartrefresh.header.StoreHo...

2020-04-10 16:24:08 383

原创 Activity 活动跳转(Java&Kotlin)
原力计划

Activity 活动跳转(Java&Kotlin)任何正式APP都不可能只有一个Activity,当有多个Activity时,怎么从一个Activity进入到另一个Activity呢?答案就是活动跳转。① 普通跳转顾名思义,就是单纯从A到B,不带任何内容。Java //活动跳转,从MainActivity跳转到TestActivity,普通跳转 startActivi...

2020-04-09 17:40:27 337 1

原创 Android 天气APP(九)细节优化、必应每日一图
原力计划

细节优化、必应每日一图在上一篇博客中已经实现了基本的功能,但是还有些美中不足,有一些细节问题要处理一下:比如一进入页面的时候天气数据是通过网络加载的,这个时候网络慢的时候页面迟迟没有刷新,所以不太友好,常规的处理方式是给一个加载提示,告诉用户数据正在加载中,稍安勿躁。这就需要用到一个加载框了。加载弹窗...

2020-04-07 16:41:57 1206

原创 Android 天气APP(八)城市切换 之 自定义弹窗与使用
原力计划

自定义弹窗既然时弹窗,那就不能让它平白无奇的出现,给一个动画效果,闪亮登场,完美谢幕。in_bottom_to_top.xml<?xml version="1.0" encoding="utf-8"?><translate xmlns:android="http://schemas.android.com/apk/res/android" android:dur...

2020-04-07 16:36:36 1005 12

原创 Android 天气APP(七)城市切换 之 城市数据源
原力计划

城市数据源9. 城市选择① 城市数据源9. 城市选择既然是城市切换,那么首先得有城市的数据,数据来源有两种,本地和网络,但是网络数据对手机的网络要求比较高,看起来会延迟很大,所以这里我用本地的数据。也是从网络上找的全国城市的JSON数据。这个文档我还是贴出来吧,这样你就不用去网上到处找了。① 城市数据源[{ "name": "北京市", "city": [{ "name"...

2020-04-07 16:35:39 1188

原创 Android 天气APP(六)旋转风车显示风力、风向
原力计划

旋转风车显示风力、风向8. 旋转风车① 样式② 自定义View③ 使用与运行显示8. 旋转风车这个时候就要用到自定义View了,这个工具类的代码也并不是我自己写的,而是网络上找的,① 样式在模块的res文件夹下的values文件下新建一个styles.xml里面的代码如下:<?xml version="1.0" encoding="utf-8"?><resourc...

2020-04-07 16:34:32 493 2

原创 Android 天气APP(五)天气预报、生活指数的数据请求与渲染
原力计划

天气预报、生活指数的数据请求与渲染6. 天气预报① 新增API接口② 修改订阅器③ 修改布局,增加列表和适配器④ 使用适配器进行数据展示7. 生活指数① 新增API接口② 修改订阅器③ 修改布局④ 数据渲染显示6. 天气预报天气预报是预测未来几天的天气,常用列表显示,实现这个功能的业务逻辑是:访问API、获取返回值、列表配置、数据渲染。首先是API接口。① 新增API接口根据和风天气中的文...

2020-04-07 16:33:25 653 3

原创 Android 天气APP(四)搭建MVP框架与使用
原力计划

MVP框架搭建与使用4. MVP框架搭建① 创建模块② 配置模块③ 创建Activity管理④ 创建BaseApplication⑤ 创建KnifeKit⑥ 创建base包(以及包下的类和接口)⑦ 创建mvp包(以及包下的Activity和Fragment)⑧ 创建net包(封装OKHttp,重写CallBack)5. app使用MVP① 创建API管理服务接口ApiService② 订阅接口服务...

2020-04-07 16:32:19 655 3

原创 Android 天气APP(三)访问天气API与数据请求
原力计划

访问天气API与数据请求2. 访问天气API接口3. 网络请求① OKHttp1.Post和Get的区别2.同步和异步的区别3.Get的同步请求4.Get的异步请求5.Post的同步请求5.Post的异步请求2. 访问天气API接口这里用的是和风天气API接口,点击进入官网点击天气API进行登录控制台或者注册账号注册用邮箱就可以了,这里没有什么好讲解的,我是已经注册过了,所以我登录就可...

2020-04-07 16:31:09 781

原创 Android 天气APP(二)获取定位信息
原力计划

编码阶段二、编写代码1. 获取当前所在位置信息① 绑定控件② Android版本判断③ 权限申请④ 初始化LocationClient类⑤ 实现BDAbstractLocationListener接口⑥ 显示定位结果二、编写代码1. 获取当前所在位置信息先修改activity_main.xml文件<?xml version="1.0" encoding="utf-8"?>&l...

2020-04-07 16:29:48 802 9

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