【从零开始撸一个App】Dagger2】的更多相关文章

工欲善其事必先利其器.像我们从零开始撸一个App的话,选择最合适的语言是首要任务.如果你跟我一样对Java蹒跚的步态和僵硬的语法颇感无奈,那么Kotlin在很大程度上不会令你失望.虽然为了符合JVM规范和兼容Java,它引入了一些较为复杂的概念和语法,很多同学就是因此放弃入门.其实越深入进去,就会越欲罢不能.除了Android开发,博主也常在后端使用Kotlin编码,有时因为某些原因同时使用Java混编.总的来说,能减少代码量,提高生产效率,似乎代码结构也更清晰了.如果你没有Kotlin的经验,…
一个成功的App背后肯定有一堆后端服务提供支撑,认证授权服务(Authentication and Authorization Service,以下称AAS)就是其中之一,它是约束App.保障资源安全的必备组件.现在也有第三方平台提供此类服务,但万事不求人,自己撸才是我们的风格. 本文假设读者有一定的OAuth2知识,若没有可先阅读博主以前写的一篇博文,或其它资料. Why PKCE? 当我们开发一个App(本文指的是Native App),选择何种AAS协议或模式是必须要谨慎考虑的问题.这就需…
Dagger2是一个IOC框架,一般用于Android平台,第一次接触的朋友,一定会被搞得晕头转向.它延续了Java平台Spring框架代码碎片化,注解满天飞的传统.尝试将各处代码片段串联起来,理清思绪,真不是件容易的事.更不用说还有各版本细微的差别. 与Spring不同的是,Spring是通过反射创建对象的,而Dagger2是[通过apt插件]在编译期间生成代码,这些生成的代码负责依赖对象创建. 本文旨在以简单通俗易懂的方式说明如何使用Dagger2,对其背后设计不做深入探讨.人生苦短,码农更…
目标 前段时间打造了一款简单易用功能全面的图片上传组件,现在就来将上传的图片以图片集的形式展现到App上.出于用户体验考虑,加载新图片采用[无限]滚动模式,Android平台上我们优选RecyclerView组件. 显示图片,用的自然是ImageView,然而它并不支持直接加载网络图片,需要先通过其它网络组件(如HttpURLConnection.okhttp3等)将图片获取到本地,得到BitMap数据,然后通过setImageBitmap()加载. ImageView也有setImageURI…
Fragment简介 Fragment自从Android 3.0引入开始,它所承担的角色就是显而易见的.它之于Activity就如html片段之于页面,好处无需赘述. Fragment的生命周期和Activity一样,都不是由开发人员而是由系统维护的.自然而然的,每当它们被重建时,系统只会去调用它们的无参构造器,带参构造器会被无视.那如果要在它们创建时传入初始化数据咋办呢?这也是为什么类似OnCreateXXX方法里会有Bundle这个玩意儿的存在,就是用于开发人员存取相关的数据,如下所示: /…
0.前言 年前就计划着写这篇博客,总结一下自己做的第一个App,却一直被新项目所累,今天抽空把它写完,记录并回顾一下相关知识点,也为刚学习Mono的同学提供佐证->C#也是开发Android的! 1.项目概述 1)项目架构:后台->Java.前端->Mono For Android.通讯->WebClient和Http,数据库->Oracal 2)参与人员:后台->技术总监.美工.前端->Me总共三人 3)开发周期:从开始研究Mono到上线大约1个月 4)其他:由…
这是深入浅出React Native的第三篇文章. 1. 环境配置 2. 我的第一个应用 将index.ios.js中的代码全部删掉,为什么要删掉呢?因为我们准备从零开始写一个应用~学习技术最好的方式就是自己动手写,看别人的代码一百遍的效果也不如自己写一遍来的效果大~ 我们要做的事情主要分成以下两步: 1. 创建组件 2. 将创建好的组件显示在app上 打开index.ios.js文件,输入 var HelloWorld = React.createClass({ render: functio…
第一个Django项目将是一个完整的博客网站.它和我们博客园使用的博客别无二致,一样有分类.标签.归档.查询等功能.如果你对Django感兴趣的话,这是一个绝好的机会.该教程将和你一起,从零开始,搭建一个属于你自己的Django博客站点. 事不宜迟,让我赶快开始吧! 创建你的第一个Django项目 Django提供了一个命令,可以让你轻松地创建初始Django项目文件结构.从你的终端运行以下命令: django-admin startproject mysite 这将会创建一个名为mysite的…
从零开始写一个武侠冒险游戏-6-用GPU提升性能(1) ----把帧动画的实现放在GPU上 作者:FreeBlues 修订记录 2016.06.19 初稿完成. 2016.08.05 增加对 XCode 项目文件的说明. 概述 我们之前所有的绘图工作都是直接使用基本绘图函数来绘制的, 这样写出来的代码容易理解, 不过这些代码基本都是由 CPU 来执行的, 没怎么发挥出 GPU 的作用, 实际上现在的移动设备都有着功能不弱的 GPU(一般都支持 OpenGL ES 2.0/3.0), 本章的目标就…
最近突发奇想,想从零开始构建一个Core的MVC项目,于是开始了构建过程. 首先我们添加一个空的CORE下的MVC项目,创建完成之后我们运行一下(Ctrl +F5).我们会在页面上看到"Hello World!". 既然是从零开始构建的项目,我们需要搞明白这个"Hello World!"是从哪里出现的? 点开我们的项目,我们会看到VS为我们生成了两个类,一个是Program.cs 和startup.cs,和一个空文件夹(wwwroot),除此之外VS在也没有为我们多…