Android
文章平均质量分 70
android合集
油焖茄子
慢慢积累 要为自己喜欢的东西 努力
展开
-
android如何将两个view截图
方法来将两个视图(View)进行截图。以下是一个简单的例子,展示如何将两个视图进行截图并保存为Bitmap对象。使用这个方法,你可以传入任意两个视图实例,并获取它们合并后的Bitmap截图。确保在实际的应用中,你有权限去写入外部存储,并在需要的时候请求相应的权限。如果你想将截图保存到文件系统中,可以使用如下代码。在Android中,你可以使用。原创 2024-05-16 14:18:29 · 199 阅读 · 0 评论 -
android 手机和平板如何适配
在Android开发中,为了确保应用既能在手机上良好运行,也能在平板等大屏幕设备上提供优质的用户体验,需要进行一系列的适配措施。原创 2024-05-09 08:58:14 · 1504 阅读 · 1 评论 -
Using insecure protocols with repositories, without explicit opt-in, is unsupported. Switch Mav
根据提示的信息的描述:意思就是maven仓库的配置需要引用HTTPS的方式进行;在 自己项目的 settings.gradle 文件里面加入。Gradle 7.0 版本构建项目以上就会出现这个问题。同时需要针对协议进行限制;转载 2023-11-13 09:17:32 · 5761 阅读 · 0 评论 -
Android 学习路线总结
Android学习路线总结,绝对干货title: Android学习路线总结,绝对干货tags: Android学习路线,Android学习资料,怎么学习androidgrammar_cjkRuby: true---一、前言不知不觉自己已经做了几年开发了,由记得刚出来工作的时候感觉自己能牛逼,现在回想起来感觉好无知。懂的越多的时候你才会发现懂的越少。如果你的知识是一个圆,当你...转载 2019-02-13 17:27:58 · 161 阅读 · 0 评论 -
Android 学习最佳路线
一篇文章一张思维导图看懂Android学习最佳路线先上一张android开发知识点学习路线图思维导图Android学习路线从4个阶段来对Android的学习过程做一个全面的分析:Android初级、中级、高级以及资深工程师。只针对Android应用开发,不针对Rom开发和逆向工程等。方便起见虚拟“小D”为成长人物进行描述。初级工程师小D之前完全没接触过Android开发,对编程...转载 2019-02-13 17:28:50 · 367 阅读 · 0 评论 -
备战2023,Android中高级面试必知必会
Android中高级面试必知必会转载 2023-02-24 20:29:16 · 332 阅读 · 0 评论 -
Android N以上安装APK报错 android.os.FileUriExposedException
解决AndroidN 上 安装Apk时报错:android.os.FileUriExposedException: file:///storage/emulated/0/Download/appName-2.3.0.apk exposed beyond app through Intent.getData()解决方法1、在AndroidManifest.xml中添加如下代码<...原创 2019-06-12 14:47:25 · 479 阅读 · 0 评论 -
Android Error:Unsupported method: BaseConfig.getApplicationIdSuffix().
将 build.gradle 中的buildscript { repositories { mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:1.1.1' }}改成:buildscript { repositorie...转载 2019-01-25 16:23:54 · 319 阅读 · 0 评论 -
Android 组件化框架
1 简介1.1 什么是组件化?组件化简单概括就是把一个功能完整的App或模块拆分成多个子模块, 每个子模块可以独立编译和运行, 也可以任意组合成另一个新的App或模块, 每个模块即不相互依赖但又可以相互交互, 遇到某些特殊情况甚至可以升级或者降级1.2 为什么要组件化?现在的项目随着需求的增加规模变得越来越大, 规模的增大带来了很多烦恼, 各种业务错中复杂的交织在一起, 每个业务模...转载 2019-03-12 09:23:07 · 757 阅读 · 0 评论 -
Android 开发架构——MVP(个人认为最适合新人了解MVP的文章)
简介MVP是MVC的衍生版本,跟MVC类似,但是在Android中更适用,也分三层:Model:用于数据的增删改查等,也包括一些数据对象View:用于界面的显示与用户操作的接收,在Android里面View通常就是Actvitiy,Fragment。Presenter:是View跟Model的“中间人”,接收View的请求后,从Model获取数据交给View。MVP&...转载 2019-06-12 12:01:02 · 1185 阅读 · 0 评论 -
Android 常用开源工具(2)-Dagger2进阶
续上一篇Android常用开源工具(1)-Dagger2入门,这篇主要介绍Dagger单例,延迟加载,强制加载,以及使用Subcomponent等一些进阶用法。如果你还没看前一篇文章请先看前一篇文章。实现单例创建某些对象有时候是耗时浪费资源或者没有完全必要的,这时候Component没有必要重复地使用Module来创建这些对象。举个例子,当我们需要榨果汁时,我们榨苹果汁与榨香蕉汁可以使用相...转载 2019-06-17 11:32:19 · 361 阅读 · 0 评论 -
Android常用开源工具(1)-Dagger2入门(个人认为新人入门Dagger2最好的文章)
介绍Dagger 2是一种依赖注入的框架,能够在编译时自动生成出一些代码,这些代码可以帮助对应的实例初始化。举个具体的例子,一个容器里面装的是苹果,不用Dagger2的情况下我们应该这么写:public class Container{ Fruit f=new Apple(color,size); ...}上面例子面临着一个问题,Container依赖了Appl...转载 2019-06-17 11:27:08 · 235 阅读 · 0 评论 -
Android 开发架构——MVP2
续上一篇 Android框架模式(1)-MVP入门这一篇主要介绍上一篇MVP的Demo中存在的问题,以及如何改进。 另外一方面,我还会介绍MVP实现中容易出现的问题来引出MVP中值得注意的细节。通过这篇文章,你将知道如何更好地使用MVP。(这篇文章需要有一定RxJava的基础,如果没有则跳过看最后的几个建议)利用开源库优化提高异步逻辑的可读性在Android中,多线程异步代码通常是不可避...转载 2019-06-17 11:16:16 · 279 阅读 · 0 评论 -
Dart 常用工具类库common_utils(新)
Dart常用工具类库 common_utils. 如果你有好的工具类欢迎PR.Dart常用工具类库 common_utils1、TimelineUtil : 时间轴.(新)2、TimerUtil : 倒计时,定时任务.(新)3、MoneyUtil : 精确转换,防止精度丢失,分元互转,支持格式输出.(新)4、LogUtil : 简单封装打印日志.(新)5、DateUtil : 日期...转载 2019-02-28 09:44:32 · 3593 阅读 · 0 评论 -
Android 跳转系统浏览器的方法
Intent intent= new Intent();intent.setAction("android.intent.action.VIEW");Uri content_url = Uri.parse("http://www.cnblogs.com");intent.setData(content_url);startActivity(intent)...原创 2019-06-18 16:55:42 · 10152 阅读 · 2 评论 -
Android WebSettings
史上最全的WebSettings说明WebSettings webSettings=webView.getSettings(); setAllowContentAccess (boolean allow) 是否允许在WebView中访问内容URL(Content Url),默认允许。内容Url访问允许WebView从安装在系统中的内容提供者载入内容。 setAllowFi...转载 2019-01-24 13:10:04 · 633 阅读 · 0 评论 -
Android框架之路——GreenDao3.2.2的使用
一、简介GreenDAO是一个开源的安卓ORM框架,能够使SQLite数据库的开发再次变得有趣。它减轻开发人员处理低级数据库需求,同时节省开发时间。 SQLite是一个令人敬畏的内嵌的关系数据库,编写SQL和解析查询结果是相当乏味和耗时的任务。通过将Java对象映射到数据库表(称为ORM,“对象/关系映射”),GreenDAO可以将它们从这些映射中释放出来,这样,您可以使用简单的面向对象的API来...转载 2018-03-15 15:07:51 · 203 阅读 · 0 评论 -
RxJava2+Retrofit2+OkHttp3的基础、封装和项目中的使用
简单介绍Retrofit、OKHttp和RxJava之间的关系:Retrofit:Retrofit是Square公司开发的一款针对Android 网络请求的框架(底层默认是基于OkHttp 实现)。 OkHttp:也是Square公司的一款开源的网络请求库。 RxJava :”a library for composing asynchronous and event-based prog...转载 2018-09-10 14:11:31 · 1163 阅读 · 0 评论 -
Retrofit 2.0 使用教程(含实例讲解)
前言在Andrroid开发中,网络请求十分常用而在Android网络请求库中,Retrofit是当下最热的一个网络请求库今天,我将献上一份非常详细Retrofit v2.0的使用教程,希望你们会喜欢。如果对Retrofit v2.0的源码感兴趣,可看文章:Android:手把手带你深入剖析 Retrofit 2.0 源码目录1. 简介特别注意:准确来说,Retrofit 是一个 RESTful 的...转载 2018-03-15 14:26:51 · 273 阅读 · 0 评论 -
Android项目中使用androidannotations
准备工作1.在Android Studio中新建一个Android项目2.在app/build.gradle文件中添加:def AAVersion = '3.2' // 可根据需要修改版本号dependencies { apt "org.androidannotations:androidannotations:$AAVersion" compile "org.android...原创 2018-03-15 13:47:04 · 287 阅读 · 0 评论 -
Android androidannotations
androidannotations是一款Android注入框架,可以方便我们编程,减少代码量(变相减少了错误的可能),让我们可以更多的把精力放在逻辑处理上。本文API介绍取至https://github.com/excilys/androidannotations/wiki/Cookbook配置在AS中,需要在项目的build.gradle中进行加入如下配置(有注释部分)b...转载 2018-12-17 10:40:58 · 686 阅读 · 0 评论 -
RxJava系列6——从微观角度解读RxJava源码
前言通过前面五个篇幅的介绍,相信大家对RxJava的基本使用以及操作符应该有了一定的认识。但是知其然还要知其所以然;所以从这一章开始我们聊聊源码,分析RxJava的实现原理。本文我们主要从三个方面来分析RxJava的实现:RxJava基本流程分析操作符原理分析线程调度原理分析本章节基于RxJava1.1.9版本的源码一、RxJava执行流程分析在RxJava系列2(基本概念及使用介绍)中我们介绍过...转载 2018-03-14 17:23:55 · 137 阅读 · 0 评论 -
RxJava系列7——最佳实践
前言有点标题党了,其实谈不上什么最佳实践。前段时间公司实行996,所以也没什么时间和精力来更新博客(好吧我承认是我懒)。因此这篇文章只是简单的通过两个例子介绍了RxJava在生产环境中的使用。不过本篇中的每个例子我都配上了完整的代码。按照计划这一期是要介绍RxJava框架结构和设计思想的,但是考虑到Netflix将在十月底发布RxJava2.0正式版;因此决定将RxJava框架结构和设计思想分析放...转载 2018-03-14 17:26:55 · 158 阅读 · 0 评论 -
RxJava系列3——转换操作符
前面两篇文章中我们介绍了RxJava的一些基本概念和RxJava最简单的用法。从这一章开始,我们开始聊聊RxJava中的操作符Operators,RxJava中的操作符主要分成了三类:转换类操作符(map flatMap concatMap flatMapIterable switchMap scan groupBy ...);过滤类操作符(fileter take takeLast takeUn...转载 2018-03-14 17:01:00 · 240 阅读 · 0 评论 -
RxJava系列5——组合操作符
这一章我们接着介绍组合操作符,这类operators可以同时处理多个Observable来创建我们所需要的Observable。组合操作符主要包含: Merge StartWith Concat Zip CombineLatest SwitchOnNext Join等等。Mergemerge(Observable, Observable)将两个Observable发射的事件序列组合并成一个事件序...转载 2018-03-14 17:20:14 · 165 阅读 · 0 评论 -
RxJava 系列2——基本概念及使用介绍
前言上一篇的示例代码中大家一定发现了Observable这个类。从纯Java的观点看,Observable类源自于经典的观察者模式。RxJava的异步实现正是基于观察者模式来实现的,而且是一种扩展的观察者模式。观察者模式观察者模式基于Subject这个概念,Subject是一种特殊对象,又叫做主题或者被观察者。当它改变时那些由它保存的一系列对象将会得到通知,而这一系列对象被称作Observer(观...转载 2018-03-14 16:54:22 · 143 阅读 · 0 评论 -
RxJava系列4——过滤操作符
前面一篇文章中我们介绍了转换类操作符,那么这一章我们就来介绍下过滤类的操作符。顾名思义,这类operators主要用于对事件数据的筛选过滤,只返回满足我们条件的数据。过滤类操作符主要包含: Filter Take TakeLast TakeUntil Skip SkipLast ElementAt Debounce Distinct DistinctUntilChanged First Last等...转载 2018-03-14 17:05:38 · 135 阅读 · 0 评论 -
在Android Studio中引入 RxAndroid
1 在app中的build.gradle 中添加 dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) implementation 'com.android.support:appcompat-v7:26.1.0' implementation 'com.android.suppor...转载 2018-03-15 09:21:54 · 1321 阅读 · 0 评论 -
RxJava 系列1——简介
前言提升开发效率,降低维护成本一直是开发团队永恒不变的宗旨。近一年来国内的技术圈子中越来越多的开始提及Rx,经过一段时间的学习和探索之后我也深深的感受到了RxJava的魅力。它能帮助我们简化代码逻辑,提升代码可读性。这对于开发效率的提升、后期维护成本的降低帮助都是巨大的。个人预测RxJava一定是2016年的一个大趋势,所以也有打算将它引入到公司现有的项目中来,写这一系列的文章主要也是为了团队内部...转载 2018-03-14 16:50:43 · 124 阅读 · 0 评论 -
RxBinding 的简单使用
一、git地址https://github.com/JakeWharton/RxBinding二、androidStudio 使用一般的包下面就用compile 'com.jakewharton.rxbinding:rxbinding:0.4.0'v4'support-v4' library bindings:compile 'com.jakewharton.rxbinding:rxbinding...原创 2018-03-14 16:42:20 · 548 阅读 · 0 评论 -
MQTT协议
MQTT协议转载 2023-03-09 16:20:01 · 2749 阅读 · 0 评论 -
Kotlin开发之点击事件
在android中,点击事件大致分为三种写法:1. 匿名内部类。2. Activity实现全局OnClickListener接口。3. 指定xml的onClick属性。今天用Kotlin实现这三种方式实现点击事件匿名内部类:这种方式最简单override fun onCreate(savedInstanceState: Bundle?) { s转载 2017-09-12 11:59:25 · 6450 阅读 · 0 评论 -
Swift 添加动态库——cocoapod
标签:虽然网上关于CocoaPods安装教程多不胜数,但是我在安装的过程中还是出现了很多错误,所以大家可以照下来步骤装一下,我相信会很好用.前言在iOS项目中使用第三方类库可以说是非常常见的事,但是要正确地配置他们有时候是非常繁琐的事情,幸运的是CocoaPods是一个很好的解决方案。什么是CocoaPodsCocoaPods是OS X和iOS下的一个第三类转载 2016-09-14 11:17:58 · 3694 阅读 · 0 评论 -
Android 判断imageview角度并旋转
/** * 读取照片exif信息中的旋转角度 * * @return角度 获取从相册中选中图片的角度 */public static float readPictureDegree(String path) { int degree = 0; try { ExifInterface exifInterface = new ExifInterface(pa...转载 2016-05-18 09:26:57 · 3186 阅读 · 0 评论 -
Android 图片加载框架之(Glide和Picasso的区别,Glide的简单使用)
Glide,一个被google所推荐的图片加载库,常见的还有Picasso,Fresco等,每一个都非常稳定,功能也都十分强大。但是它们的使用场景基本都是重合的,也就是说我们基本只需要选择其中一个来进行学习和使用就足够了,每一个框架都尝试去掌握的话则有些浪费时间。最常用的是Glide和Picasso,今天就针对于Glide和Picasso的区别,以及Glide的简单使用来进行具体介绍Picas...转载 2019-06-18 10:08:38 · 430 阅读 · 0 评论 -
Android Glide图片加载框架
导入Glide dependencies { compile 'com.github.bumptech.glide:glide:3.5.2' compile 'com.android.support:support-v4:22.0.0' } 当然现在v4包已经是android项目标配了Glide的w转载 2018-01-17 10:22:24 · 297 阅读 · 0 评论 -
Android Bitmap用法
1、Drawable → Bitmappublic static Bitmap drawableToBitmap(Drawable drawable) {Bitmap bitmap = Bitmap.createBitmap(drawable.getIntrinsicWidth(),drawable.getIntrinsicHeight(),drawable.get转载 2016-05-18 09:46:01 · 360 阅读 · 0 评论 -
Android Material 风格的 Dialog
Android Support Library v22.1 中开始提供了 Material 风格的 Dialog 控件 。这为开发者提供了很好的支持,省去了使用开源库或自己设计的烦恼。下面我们来看看如何使用 Material 风格的 Dialog 。兼容的 AlertDialog拥有Material风格的Dialog控件在下列类:android.support.v7.app转载 2016-06-02 11:26:40 · 2293 阅读 · 0 评论 -
Android SnackBar
Android中Snackbar的介绍以及使用介绍Snackbar可以说是Toast的升级版,不仅有显示信息的功能,还可以添加一个Action,实现点击功能,可以右滑删除。效果图Snackbar是Android Support Design Library库支持的一个控件,使用的时候需要一个控件容器用来容纳Snackbar.官方推荐使用Coord转载 2016-05-11 11:07:45 · 444 阅读 · 0 评论 -
Android 线程池
在写程序时有些异步程序只执行一遍就不需要了,为了方便经常会写下面的代码new Thread(new Runnable() { @Override public void run() { // TODO Auto-generated method stub }}).start();这样new出来的匿名对象会存在一些问题1.由于是匿名的转载 2016-06-04 14:52:45 · 245 阅读 · 0 评论