安卓
peihp_
熟悉多方语言,Linux C,C++等,java,安卓等等嵌入式开发
展开
-
autoJs_scriptDemo自动化测试学习脚本
autoJs_scriptDemo自动化测试学习脚本,很好的学习资料。能正常运行,当然也难免有问题,欢迎大家帮忙修正!kuaishou:可学习内容如锁后台、清缓存、切换账号、黑屏、过滑块、检测红包、图片视频滑动、签到、自动重启脚本等功能。qianhe:支持好多应用github下载...原创 2020-05-02 11:58:31 · 1706 阅读 · 0 评论 -
常用手机和平板的主流屏幕分辨率及适配注意项
针对IOS,Android 手机分辨率大小、屏幕尺寸、开发尺寸的参考。 在实际页面的开发过程,往往显示屏幕的宽度换算为像素尺寸的1/2。IOS:6.5英寸 —— 1242 x 2688 px —— Xs Max6.1英寸 —— 828 x 1792 px —— XR5.8英寸 —— 1125 x 2436 px —— X/Xs5.5英寸 —— 1242 x 2208 px —— 6+...原创 2019-11-01 13:19:39 · 18121 阅读 · 0 评论 -
APP上架到各大应用商店指南
前序要把APP上架到各个应用市场都需要的必要资质材料①注册开发者账号②软件著作权(复件盖公司公章)③营业执照(复件盖公司公章)④该应用PC官网的ICP备案工信部截图(公司网站备案,同时须有app的模块)⑤安全评估报告(图片,可拼接)⑥对应应用市场平台的承诺函(盖公章的图片,可拼接)⑦根据软件类别所需的特别资质证书(如直播类的网络文化许可证)这里的方法包括注册帐号...原创 2019-10-24 10:35:20 · 11683 阅读 · 1 评论 -
BookWorm之IT藏经阁
BookWorm有那么只勤勉的小虫,如痴如醉地沉迷于书卷,孜孜不倦地咀嚼着…… 小虫不才,科班出身,闲静少言,喜藏书卷。好读书,不求甚解;每有会意,便欣然忘食。今光布所藏,涉猎者遍及软硬件,意卿览之,斟其胜劣,而后市之,尊其原著。文件夹 PATH 列表卷序列号为 A281-D828D:\...原创 2019-05-08 21:09:35 · 594 阅读 · 0 评论 -
android通用模板项目AndroidTemplate
AndroidTemplate ————android通用模板项目,方便敏捷开发 最近博客消停了好久,一方面项目要参加数字中国展三番两次的改忙的...原创 2019-04-29 20:42:56 · 1293 阅读 · 1 评论 -
备战阿里面试的经历(获得offer后来没去)
作者:七分熟pizza| 来源:公众号七分熟pizza导读网上的面试题很多,但是讲解备战面试经历的文章很少,这篇文章从简历到模拟面试再到面试都有讲解,十分难得,推荐给大家。下文中的我指的是作者七分熟pizza。1.开篇我找工作时是2015年。那一年,BAT大量缩招,就业形势严峻,互联网寒冬消息蔓延。最终我经过激烈角逐拼下了几个大厂offer,回顾往事,觉得分享出来,...转载 2019-05-05 13:15:34 · 2404 阅读 · 0 评论 -
【android免root脚本制作】总览Auto.js开发小结——基础篇
Auto.js是什么 Auto.js是一款写脚本,ui界面,运行脚本,制作简单安卓app的一体式软件。并且是全开源的免费APP,类似于按键精灵,而且本软件有全部按键精灵的功能,还有其他例如控件操作等,按键精灵没有的强大功能。本软件写脚本基于javascript所以在写脚本方面代码难度较大。本教程就是写给不会或不熟悉js的小白看,方便各位快速上手。官方的入门文...原创 2019-03-24 17:05:41 · 11407 阅读 · 2 评论 -
androidstudio使用Memory Profiler查看内存泄露
1. 简介Memory Profiler是Android Profiler中的一个组件 ,可帮助您识别因内存泄漏和内存抖动导致的卡顿,无响应,甚至crashes。它显示了应用程序内存使用的实时图形,可以捕获堆信息,强制GC以及跟踪内存分配。我们使用Memory Profiler执行以下操作:在时间轴中寻找可能导致性能问题的不良内存分配模式。 dump Java heap查看在任何给定时间...转载 2019-04-03 21:26:34 · 7025 阅读 · 0 评论 -
混合开发:android原生webview与H5,js的交互
随着移动互联网的高速发展,常规的开发速度已经渐渐不能满足市场需求。原生H5混合开发应运而生,目前,市场上许多主流应用都有用到混合开发,很多App里都内置了Web网页(Hybrid App),比如说很多电商平台,淘宝、京东、聚划算、支付宝、美团等。下面,结合我本人的开发经验,简单谈一下对混合开发的认识以及实现方式。混合开发的优点优点显而易见,由前端工程师写一个页面,多个平台都...原创 2019-03-22 13:37:03 · 2345 阅读 · 1 评论 -
从源码深入理解Context及其使用
认识Context 我们知道,Android应用都是使用Java语言来编写的,那么大家可以思考一下,一个Android程序和一个Java程序,他们最大的区别在哪里?划分界限又是什么呢?其实简单点分析,Android程序不像Java程序一样,随便创建一个类,写个main()方法就能跑了,而是要有一个完整的Android工程环境,在这个环境下,我们有像Activity、Service...原创 2019-03-21 22:21:37 · 651 阅读 · 0 评论 -
MVVM架构在Flutter中的简单实践
写在前面Flutter 是 Google推出并开源的移动应用开发框架,主打跨平台、高保真、高性能。开发者可以通过 Dart语言开发 App,一套代码同时运行在 iOS 和 Android平台。Flutter官网:https://flutter-io.cn还记得18年参加上海Google开发者大会的时候,听了一天的Flutter的介绍,之后不久1.0发布了,到现在1.2版本,Flut...转载 2019-03-13 13:24:25 · 1810 阅读 · 0 评论 -
进阶——解决非主线程中更新ui的问题如Only the original thread that created a view hierarchy can touch its views
引言以下handler部分因为看到原文地址:https://blog.csdn.net/crazymo_/article/details/54092099写的较好,所以节选转发该部分内容。今天同事在使用RxAndroid+Retrofit来请求服务器并根据返回的数据动态更新界面时,碰到一个问题Only the original thread that created a view hier...原创 2019-03-12 12:43:10 · 2645 阅读 · 0 评论 -
从源码中Activity 的定义来理解 Activity(ContextWrapper、Context、Activity、ContextThemeWrapper)
首先我们来看下源码中源于Activity的定义:public class Activity extends ContextThemeWrapper implements LayoutInflater.Factory2, Window.Callback, KeyEvent.Callback, OnCreateContextMenuListener...转载 2019-03-20 13:28:16 · 735 阅读 · 0 评论 -
android系统中使用TelephonyManager类来获取imei号和其他手机信息及Android7.0TelephonyManager.getDeviceId()返回null解决方案
在AndroidManifest.xml文件中增加<!--允许读取电话状态SIM的权限--><uses-permissionandroid:name="android.permission.READ_PHONE_STATE" />代码如下:private void getSystemPhoneMessage(){ TelephonyManager...原创 2019-03-20 13:20:34 · 4396 阅读 · 0 评论 -
Android 常用开源库总结
##一 、基本控件#####TextView###HTextView 一款支持TextView文字动画效果的Android组件库。ScrollNumber 滚动数字控件ticker 滚动数字控件ReadMoreTextView 阅读更多,折叠文本ExpandableTextView 折叠文本android-autofittextview 自动调整文字大小html-t...转载 2019-05-09 12:42:13 · 566 阅读 · 0 评论 -
浅谈RxJava
最后推荐两个学习Rxjava:RxJava系列教程RxJava2.x转载 2019-05-11 23:46:30 · 370 阅读 · 0 评论 -
kotlin基本篇:kotlin与java语法不同写法比较
写在前面 最近谷歌大会强调Kotlin将在今后广泛拓展应用,毕竟相比java优势凸显,所以学习 Kotlin 已经成为我们必经之路。本想着等到某一天大佬们把坑踩得差不多了,又或者我们开发中要用到了,再学也不迟,毕竟我们还是要优先把时间和精力留给实际开发中需要学习的知识上,而现在呢也只能跟着冲锋陷阵了不然就落后了。对象Java 的写法MainActivity.th...原创 2019-05-12 00:50:23 · 1376 阅读 · 1 评论 -
Android9.0网络兼容和依赖适配问题
客观来说,9.0兼容好像问题不是很大,很多的APP一点问题都没有,但是有些比较旧的APP就问题比较多了,下面简单写一下解决方法,本文纯属笔记,方便以后查看。网络问题:问题一应对9.0 版本的网络明暗流量问题设置一下 application (清单文件里面) <application android:usesCleartextTraffic=...原创 2019-07-04 21:27:19 · 2192 阅读 · 0 评论 -
Android9.0设置AlertDialog修改底部按钮居中等
在小米9se版本,发现应用升级的对话框按钮都偏向左,讲真一开始就考虑是小米又特立独行了。 下面再介绍下出现情况的解决方案,代码如下,两种处理方案: if (downloadDialog != null && downloadDialog.isShowing()) { downloadDialog.dismiss();...原创 2019-07-04 20:33:14 · 4191 阅读 · 1 评论 -
分享一套Android快速开发通用模板,包含常用主流框架,持续更新中……
项目初衷 做开发三五年了。项目也做了些,都是不停地撸码,有自己从0开始的,有从其他人手里接锅的,慢慢的遇到的问题多了起来也就成了经验,自然也就发现很多东西值得整理起来,以备不时之需。随着经验慢慢的有点苗头,开始想要封装一套通用模板框架或者工程,用来满足以后项目的开发需求。在这样思索的过程中,找了不少的开源库,集思广益,博览众长,把不错的框架融合进自己的项目里,一点一滴的孵化项目成...原创 2019-07-08 10:08:48 · 3103 阅读 · 3 评论 -
Android app设置字体大小和字体样式不随系统设置改变而改变
字体大小在BaseActivity和BaseApplication里重写方法或者在基类里重写方法:/设置字体为默认大小,不随系统字体大小改而改变 @Override public void onConfigurationChanged(Configuration newConfig) { if (newConfig.fontScale != 1)//非默认...原创 2019-06-14 15:54:44 · 3011 阅读 · 0 评论 -
android打包混淆及语法规则详解
前言在使用Android Studio混淆打包时,该IDE自身集成了Java语言的ProGuard作为压缩,优化和混淆工具,配合Gradle构建工具使用很简单。只需要在工程应用目录的gradle文件中设置minifyEnabled为true即可。然后我们就可以到proguard-rules.pro文件中加入我们的混淆规则了。ProGuard作用压缩(Shrinking):默认开启,用以...原创 2019-05-29 12:38:47 · 1244 阅读 · 0 评论 -
android9.0将自己的应用加入系统的打开方式和分享列表中
前言继Android7.0版本后 Uri和文件路径互相转换封装类,实现系统分享功能及 FileProvider详细解析和踩坑指南,与fileprovider生成的Uri无法被识别后,再谈android如何将自己的应用加入系统的打开方式和分享列表中。1、分享列表中显示自己的应用①在用系统默认的分享功能都会调用系统中可分享的应用的一个列表,但是如何使自己的应用加入这个列表呢?首先...原创 2019-06-06 09:06:41 · 4535 阅读 · 1 评论 -
Android开发工程师高效成长指南
前言成为一名优秀的Android开发,需要一份完备的知识体系,在这里,让我们一起成长为自己所想的那样~。从去年的互联网寒冬开始,移动开发甚至前后端的招聘需求越来越少,公司对开发者的技术要求也越来越高。特别是对于我们Android开发来说,似乎我们的生存空间越来越小,处境也变得越来越困难。所以,在这个时代,我们必须找到适合自己的一条“黄金路”。其实,对于Android来说,它其实有很多个细分...转载 2019-05-13 15:24:09 · 1818 阅读 · 0 评论 -
分享一套Android快速开发通用模板,包含常用主流框架,持续更新中……
AndroidTemplate博客地址:android小咖秀项目初衷做开发三五年了。项目也做了些,都是不停地撸码,有自己从0开始的,有从其他人手里接锅的,慢慢的遇到的问题多了起来也就成了经验,自然也就发现很多东西值得整理起来,以备不时之需。随着经验慢慢的有点苗头,开始想要封装一套通用模板框架,用来满足以后项目的开发需求。在这样思索的过程中,恰好网遇了轮子哥,轮子哥早已搭好自己的框架并不断...原创 2019-05-17 12:48:22 · 758 阅读 · 0 评论 -
学最好的技术 进更好的公司 | 各大互联网公司技术分享
大家应该都有在网上阅读技术文章的习惯,以前我比较喜欢在 CSDN,不过现在改版的有点夸张,慢慢偏向于掘金,简书等平台...后来为了提升效率,我也搭建了 wanandroid.com,主要用于聚集一些比较好的技术文章,方便大家闲暇过程中学习。有一部分非常有价值的技术文章:各大公司对外开放的分享于是,利用这个周末利用放假时间,帮大家整理下目前我能找到的各大公司的...转载 2019-05-13 08:55:54 · 897 阅读 · 0 评论 -
Android开发需要了解的TCP/UDP网络协议
盛唐年间,天下安定,由于疆域太大传递信件不易,就有民间的能人异士向皇帝谏言,每个州县都建立信息司来养信鸽。由信鸽来传递信件。皇帝觉得可行遍开始施行。 一日皇帝命小吏从东都洛阳发一封信件到西京,这个小吏第一次去信息司发信件,到了信息司发现只有一个人处理信件。小吏便把信件交给了信息司的小哥,只见小哥娴熟的拿出只信鸽告诉它去西京,就放飞了,然后将信件誊抄了一份,将信件撕成...转载 2019-05-12 16:45:40 · 612 阅读 · 0 评论 -
Android8.0 悬浮窗的实现
0. 前言 现在很多应用都使用到悬浮窗,例如微信在视频的时候,点击Home键,视频小窗口仍然会在屏幕上显示。这个功能在很多情况下都非常有用。那么今天我们就来实现一下Android悬浮窗,以及探索一下实现悬浮窗时的易错点。首先可以看看个悬浮窗效果图,很抱歉gif动态超过5M无法上传好啦,下面就来一曲火星哥骚气的《Treasure》吧。Demo源码地址:https://github...转载 2019-03-09 13:31:19 · 3158 阅读 · 1 评论 -
美团点评移动端基础日志库——Logan
背景对于移动应用来说,日志库是必不可少的基础设施,美团点评集团旗下移动应用每天产生的众多种类的日志数据已经达到几十亿量级。为了解决日志模块普遍存在的效率、安全性、丢失日志等问题,Logan基础日志库应运而生。现存问题目前,业内移动端日志库大多都存在以下几个问题:卡顿,影响性能 日志丢失 安全性 日志分散首先,日志模块作为底层的基础库,对上层的性能影响必须尽量小,但是日志的写...转载 2019-03-13 22:04:40 · 615 阅读 · 0 评论 -
Android线程管理之详解(线程创建、线程终止、线程同步、阻塞队列、线程池)
前言 总结一下Android上的线程管理,今天先来总结一下线程创建、线程终止、线程同步、阻塞队列、线程池使用。一、线程创建 线程的创建包括三种方法,分别是继承自Thread,实现Runnable接口、实现Callback接口,前两个在开发中最为常见。①继承自Thread public class OneThread extends Thread { ...原创 2019-03-03 23:49:50 · 2378 阅读 · 1 评论 -
Android7.0以前和7.0以后开启闪光灯的方式
1.安卓7.0以后闪光灯是通过CameraManger来进行管理的,以下是7.0以后闪光灯开启关闭代码:@TargetApi(Build.VERSION_CODES.N) @RequiresApi(api = Build.VERSION_CODES.LOLLIPOP) public void changeFlashLight(boolean openOrClose) { ...转载 2018-11-22 13:01:30 · 1124 阅读 · 2 评论 -
Android如何打开闪光灯
在android中打开闪光灯的方法有两种,一种是获取硬件服务,通过反射的方式来操作闪光灯。另外一种是获得Camera对象,通过设置Camera的参数来操作闪光灯。一下是一个操作闪光灯的工具类:实现了两种方式操作闪光灯。通过switchFlashlight方法是通过反射的方式操作,通过turnLightOn,turnLightOff方法操作是通过设置Camera来操作闪关灯的。通过反射的方法貌似在4...转载 2018-11-22 12:54:08 · 3535 阅读 · 0 评论 -
RecyclerView(一)点击事件的两种方式
recyclerview自身不带有点击事件的回调,以下实现recyclerview点击事件的两种方式1、通过接口回调的方式:直接上代码加注释 1、首先定义点击的接口import android.view.View;//点击事件接口回调public interface OnItemClickListener{ void onItemClick(View view, in...原创 2018-11-22 12:51:41 · 2513 阅读 · 0 评论 -
android面试题之数据结构篇
1.常见的数据结构介绍 https://www.jianshu.com/p/230e6fde9c75(转)2.常见的5种并发集合1、常用的五种并发包ConcurrentHashMap CopyOnWriteArrayList CopyOnWriteArraySet ArrayBlockingQueue LinkedBlockingQueue2、ConcurrentHa...转载 2018-08-23 01:39:18 · 304 阅读 · 0 评论 -
android精妙面试题集三
1、绘制Activity和Fragment生命周期流程图,并以对比图形式展示。Activity生命周期图:Fragment生命周期图: 两者对比图:2、如何避免OOM异常OOM(out of Memory)即内存溢出异常,也就是说内存占有量超过了VM所分配的最大,导致应用程序异常终止。通常OOM都发生在需要用到大量内存的情况下,因为Android的每...原创 2018-08-23 01:23:08 · 339 阅读 · 0 评论 -
Activity、Fragment、Service、View生命周期
1. Activity 生命周期 onCreate : 该方法是在Activity被创建时回调,它是生命周期第一个调用的方法,我们在创建Activity时一般都需要重写该方法,然后在该方法中做一些初始化的操作,如通过setContentView设置界面布局的资源,初始化所需要的组件信息等。 onStart : 此方法被回调时表示Activity正在启动,此时Activity已...转载 2018-08-22 22:42:16 · 774 阅读 · 0 评论 -
安卓重要生命周期和流程图
转载自https://blog.csdn.net/RoseChan/article/details/514865131-Activity生命周期2-Fragment生命周期3-Service生命周期4-View的绘制流程图5-Looper-Message-Handler流程图6-MediaPlayer生命周期7-SurfaceView生命周期...原创 2018-08-22 22:36:58 · 936 阅读 · 0 评论 -
安卓面试题二
填空题:1.我们用________来定义一个整数,用Char来定义一个字符类型,称为原始数据类型;2.android 的四大组件是____________,service,broadcast和contentprovide;3.activity一般会重载7个方法用来维护其生命周期,除了_____________________,onStart(),onDestory() 外,还有on...原创 2018-08-22 22:28:07 · 1808 阅读 · 0 评论 -
安卓面试题集大全及解答
1、 Android dvm的进程和Linux的进程, 应用程序的进程是否为同一个概念 可以认为是同一个概念。①DVM指dalivk的虚拟机。每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例。②每一个DVM都是在Linux 中的一个进程所以说可以认为是同一个概念。 2、sim卡的EF 文件有何作用 EF就是作存储并和手...原创 2018-08-22 22:14:56 · 1321 阅读 · 0 评论 -
安卓常用6种设计模式总结
转载自https://blog.csdn.net/u012583459/article/details/47079529 和https://blog.csdn.net/u012583459/article/details/47079549由于项目变更的频繁性,作为一名程序员,我们需要掌握设计模式的必要性,就不言而喻~~,下面就是一些我自己学习的设计模式总结。 接下来,主要...转载 2018-08-19 23:10:19 · 13179 阅读 · 2 评论