- 博客(24)
- 收藏
- 关注
转载 Android性能优化总结
在Android应用优化方面,我们主要从以下4个方面进行优化:稳定(内存溢出、崩溃)流畅(卡顿)耗损(耗电、流量、网络)安装包(APK瘦身)内存优化由于Android应用的沙箱机制,每个应用所分配的内存大小是有限度的,内存太低就会触发LMK(Low Memory Killer)机制,进而会出现闪退现象。如果要对内存进行优化,就需要先搞懂java的内存是如何分配和回收的,关于这方面,可以重点参考下面的内容:Java 垃圾回收器的GC机制,看这一篇就够了Android 内存泄漏常见案例及分析A
2020-08-17 11:18:55 357
原创 mysql多表查询
1.用户_角色_权限三表关系2.交叉查询3.多表查询提供的表结构如下:#创建数据库CREATE DATABASE day18;#使用数据库USE day18;#分类表CREATE TABLE category( cid VARCHAR(32) PRIMARY KEY , cname VARCHAR(50));#分类表添加数据INSERT INTO category VALUES('c001','家电');INSERT INTO ...
2020-07-16 15:42:11 258
原创 SharedPreferences如何支持Double类型的数据?
SharedPreferences是Android官方为我们提供的一个非常简单易用的本地持久化数据存储工具,我们可以很轻松的利用它存储一些常用的键值对。在App退出关闭后,其存储的数据依然有效,很多不需要存储复杂数据和大数据的应用,只靠SharedPreferences就能满足数据本地存储的需求了。SharedPreferences可以支持的有5种数据类型,分别是:int、long、boolean、float、String,无论是用put还是get方法,其基本的数据类型只有这5种。细心的朋友会发现,咦,
2020-06-23 17:19:37 1602
原创 Android实现点击返回键, 返回桌面而不是退出程序或者退到后台
记录一次填坑在当前ACTIVITY触发返回页面加上以下代码,查阅过其他人写的方式,好像不管用,应该注意RETURN FALSE(如果是return true,则会退到后台,不显示)还有Intent.FLAG_ACTIVITY_CLEAR_TOP(如果是FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED则不会跳到指定页面去)@Override public boolean onKeyDown(int ke...
2020-05-12 15:07:09 1274
原创 AndroidUSBCamera,UVCCamera开发通用库
AndroidUSBCamera基于[saki4510t/UVCCamera](https://github.com/saki4510t/UVCCamera)开发,该项目对USB Camera(UVC设备)的使用和视频数据采集进行了高度封装,能够帮助开发者通过几个简单的API实现USB Camera设备的检测、连接、预览和音视频数据采集,最重要的是手机无需root,只需支持otg功能即可驱动。主...
2019-11-08 15:19:00 545
原创 flutter 运行项目报错
本文链接:https://blog.csdn.net/qq_33684444/article/details/86656301Error running Gradle:ProcessException: Process "D:\Android\APP path\flutter_app2\flutter_app2\android\gradlew.bat" exited abnorm...
2019-09-30 10:24:36 1518
原创 android app被系统回收后重启异常的解决方法
APP在后台运行的时候时常会发生被系统回收的事情,可能是内存不足的多种原因造成。被系统回收后系统任然会保留APP的activity栈,用以恢复,但是这样就存在很多的问题需要解决,如果activity没有做保存数据的操作,就会出现空指针等异常。一种比较比较好的方式就是在被系统回收后,重启app的时候就重新唤起app这个在网上有比较好的解决方式了http://www.2cto.com/kf/201...
2019-09-03 15:58:03 934
转载 如何用Fiddler对Android应用进行抓包
Fiddler是一款非常流行并且实用的http抓包工具,它的原理是在本机开启了一个http的代理服务器,然后它会转发所有的http请求和响应,因此,它比一般的firebug或者是chrome自带的抓包工具要好用的多。不仅如此,它还可以支持请求重放等一些高级功能。显然它是可以支持对手机应用进行http抓包的。本文就来介绍下如何用fiddler对手机应用来抓包。工具/原料 Fiddler ...
2019-07-24 10:41:01 152
原创 android应用上线前应该做的一些事二
一、性能优化TraceView性能分析工具TraceView: ddms中的一个分析工具使用方式 start method profiling 开始跟踪 stop method profiliing 结束跟踪按方法调用消耗时间的降序排列,分析耗时较多的方法是否有优化的空间;二、内存优化内存溢出(out of memory):简称oom是指程序在申请内存空间后,没有足够的内...
2019-07-24 09:47:45 127
原创 android应用上线前应该做的一些事一
一、apk签名(必须)1.apk签名(数字签名)apk签名:开发者(开发商)通过数字证书(也可以叫签名文件),给apk应用打上带有个人(公司)信息的标记,以表示自己是该应用的开发者或拥有者。签名后的apk解压后能看到META-INF文件夹,并且里面会有3个签名相关的文件(MANIFEST.MF,CERT.SF,CERT.RSA)数字签名: 哈希算法(sha1, md5) + 私钥加密查...
2019-07-24 09:46:19 589
原创 AndResGuard简单使用教程Android资源混淆工具
AndResGuardAndroid资源混淆工具使用说明AndResGuard是一个帮助你缩小APK大小的工具,他的原理类似Java Proguard,但是只针对资源。他会将原本冗长的资源路径变短,例如将res/drawable/wechat变为r/d/a.项目地址:Android资源混淆工具使用说明AndResGuard配置到项目中gradle(Project)class...
2019-07-24 09:10:48 1267 1
转载 Android倒计时控件 CountdownView
中文CountdownViewAndroid countdown view,use canvas draw,supports multiple stylesDownload demo apkScreenshotGradlecompile 'com.github.iwgang:countdownview:2.1.6'CodeCountdownV...
2019-07-20 09:59:54 2728
转载 Android自定义控件 倒计时
Android自定义控件 倒计时 0写在前面本篇文章实现了一个简单的倒计时控件,主要运用了画布的操作,滑动角度计算等知识点,非常适合自定义控件的初学者进行学习,看下效果图:1实现初始化一些数据publ...
2019-07-20 09:42:14 313
翻译 Android倒计时控件实现
效果图如下:那么如何实现这个倒计时功能?需要围绕核心功能来延伸开发:不论是全屏还是缩小,都需要选择时间之后才能开始倒计时,那么首先实现自定义滑动时间。实现一个如此功能的自定义view,需要如下为步骤:以选择中的时间字体为轴心,分上、下2部分时间,和上下滑动选择时间,首先绘制时间显示字体:Paint.FontMetricsInt 绘制文本对象。fmi.top,fmi.bo...
2019-07-20 09:38:16 2378
翻译 Android中的组件安全漏洞介绍和检测
第一部分 activity组件安全首先我们介绍下我们常见的Android的activity组件:Activity是Android四大组件之一,它用于展示界面。Activity是一个应用程序组件,提供一个屏幕,用户可以用来交互为了完成某项任务。Activity中所有操作都与用户密切相关,是一个负责与用户交互的组件,可以通过setContentView(View)来显示指定控件。在一个andr...
2019-07-18 11:19:57 454
原创 webview加载处理超时以及404、500、断网、timeout等问题
一、超时处理方法有时候断网、网络状况不好或者发生错误等等都会导致webview加载不到页面的情况,这时候我们需要做相应的处理方法,如一个刷新按钮允许用户重新加载,所以需要做相应处理方法,常用的是设置一个时间计时器,并重写WebViewClient中onPageStarted和onPageFinished函数,在onPageStarted执行时启动计时,在onPageFinished关闭计时,并...
2019-05-06 10:04:18 4249
原创 Android studio报错:app:mergeDebugResources FAILED
1.问题描述昨天上午,我在app中添加了一个activity并为之配了相应的布局文件,之后突然发现,应用报错了!!!!而且坑爹的Android studio没有给出任何的报错信息,只有一句话:app:mergeDebugResources FAILED。于是按照惯例,我首先去百度,一般来说,这种问题一定是大家都会遇到的,所以一般都会得到答案,但我万万没有想到,由于Android studio给出...
2019-04-04 09:50:20 3354 1
原创 mvp 和 rx+ retrofit
根据 http://www.wanandroid.com 提供api ,编写 包含 Material Design + MVP + Rxjava2 + Retrofit + Glide项目该项目主要学习 mvp 和 rx+ retrofit 一套下载地址http://april.aprilblank.com/download版本迭代v1.1.01.添加微信公众号模块前...
2018-12-03 17:17:36 125
原创 Retrofit学习(四)-下载和上传文件
下载文件 @Streaming:用于下载大文件 @Streaming //大文件时要加不然会OOM @GET Call<ResponseBody> downloadFile(@Url String fileUrl);...
2018-11-28 10:47:11 382
原创 Retrofit学习(三)-普通post请求
Post表单提交-单个参数 @Field接口 /** 表单提交要加 @FormUrlEncoded * 登录 * @param username 用户名 * @param password 密码 * @param deviceId 设置ID * @param platform 平台这里是Android * @param verI...
2018-11-28 10:42:03 555
原创 Retrofit学习(二)-get请求
Retrofit学习(二)-get请求环境、简单封装建立接口 /** * 方法不要加返回值之类的void String。。CAll<String>代表返回值 * @return */ @GET("rank") Call<String> getRank(@Query("key") String key ,@Q...
2018-11-28 10:39:14 445
原创 Retrofit学习(一)集成-简单get请求
Retrofit学习(一)集成-简单get请求集成githubhttps://github.com/square/retrofit在studio在添加依赖 //添加retrofit-会自动下载okhttpcompile 'com.squareup.retrofit2:retrofit:2.1.0' //添加retrofit gson转换会自动下载gsoncomp...
2018-11-28 10:36:53 133
原创 Android Studio 安装应用失败总结
今天插上数据线,run.结果居然安装失败。提示信息为:INSTALL_FAILED_USER_RESTRICTED。 顿时懵逼了,刚买的新机,就出现这个问题。无语啊。 刚开始还以为是Android studio的问题。结果模拟器跑了下,安装成功。 拿手机在其他人那跑了下,安装失败。好吧,手机的问题。 那到底是哪出了问题呢?我未知来源的开关也打开了。USB调试也打开了。就是失败。结果,自己碰巧看到魅...
2018-04-04 15:17:57 1467 1
原创 Android 7.0 行为变更 通过FileProvider在应用间共享文件
一、概述之前项目的新特性适配工作都是同事在做,一直没有怎么太关注,不过类似这些适配的工作还是有必要做一些记录的。对于Android 7.0,提供了非常多的变化,详细的可以阅读官方文档Android 7.0 行为变更,记得当时做了多窗口支持、FileProvider以及7.1的3D Touch的支持,不过和我们开发者关联最大的,或者说必须要适配的就是去除项目中传递file://类似格式的uri了。在...
2018-03-21 16:49:15 263
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人