首页
学习
活动
专区
工具
TVP
发布

Phoenix的Android之旅

专栏成员
135
文章
140211
阅读量
31
订阅数
几个入门移动端AI的基础知识
AI的知识面实在太广了,想要一篇几百字的文章就能入门其实很难,而且很多知识其实都需要数学基础,要是跟大家说上一天怎么计算函数的导函数,估计能劝退一大波人。
PhoenixZheng
2019-05-17
1K0
移动端学习AI的线路
AI是一个理论知识基础要求非常扎实的技术方向。在学习AI的过程中会遇到很多高等数学知识,比如矩阵运算,导数偏导数。 目前对于AI的开发人员要求普遍需要研究生以上,在扎实的理论背景下才能进行比较系统的AI开发。 对于大部分有几年工程经验的移动端开发来说,大学的这些知识已经生疏了,要想学AI这些生疏的知识是比较严重的阻碍。 这个问题其实可以绕过去,对于移动端开发来说,如果只是想达到"能够理解并开发AI"的程度,只需要补充几个基础的知识点就够。 当然如果想要有完整的AI知识体系,除了高等数学,矩阵数学,统计学也需要好好学习一下。
PhoenixZheng
2019-05-16
7170
在Android上用AI识别物体
AI其中一个很重要的应用就是物体识别。 今天我们来看看如何在Android上实现这个功能。
PhoenixZheng
2018-12-19
4.3K2
零基础理解RxJava和响应式编程
RxJava发展到现在已经在2016年推出了第二代。可能你听说过很多人讲起RxJava,但是很少在实际项目开发中用到它。 原因很简单,RxJava虽然很好用,但是它有一定的学习成本。很多人只是知道这么个东西,但是没有真正的去学习和推动RxJava。毕竟会觉得即使没有RxJava也一样能写好代码。 其实它的学习成本和带来的收益对比的话,是非常值得花点时间去学的。当你切换到Rx编程思维之后,会发现很多以前难以处理的问题在响应式编程下都变得易如反掌。 而很多公司没有推进RxJava的原因,主要在于船大难掉头。笔者见过一个上亿日活的项目,至今还在用ant构建。可想而知还有许多新技术受限于项目的历史原因没法应用。 另一个推动RxJava困难的原因在于开发团队水平层次不齐。如果你的团队里有成员连并发和线程都搞不清楚的话,RxJava可能只能带来负面效果。
PhoenixZheng
2018-09-29
7650
观察者模式--DataBinding的原理和坑
上一次我们介绍了DataBinding的应用,不过只在应用层面描述了下,没有做深入分析。 关于DataBinding的实现原理,它的根本思想是观察者模式。 这篇会结合上次的demo来分析它的原理和坑,关于demo源码可以在后台回复"数据绑定"获得。
PhoenixZheng
2018-09-29
2K0
开发必须了解的10个Android库
作为一个开发者来说,避免重复造轮子是很重要的,能让你节省很多时间去专注于开发自己的业务。2018年已经过去一大半了,今天介绍下今年以来业界内比较推崇的几个框架,希望能提高大家的开发效率。
PhoenixZheng
2018-09-29
2.3K0
史上最奇葩的10款Android手机
在2010年的Android市场上滑动键盘手机并不少,不过摩托罗拉决定推出一款与众不同的手机,型号叫Backflip。
PhoenixZheng
2018-08-23
1.3K0
Dagger2 Android应用:@Component和@Module
这部分会介绍一下DI的主要概念,包括Component,Module,但不涉及和Android有关的具体代码。
PhoenixZheng
2018-08-07
4850
来聊聊Android的多线程
答:其实除了Activity,其它组件也都在主线程。这就意味着如果在其他组件中做耗时操作的话,同样会另主线程阻塞。
PhoenixZheng
2018-08-07
3140
你可能不了解的Synchonized和ReentrantLock
面试中经常会问到的一类问题是多线程相关的, 比如如何处理Android中的多线程通信,如何处理并发问题。归根结底,处理Java的并发,都离不开锁。 我们将花三到四分钟了解两种锁的用法和不同, 还有什么是公平锁。
PhoenixZheng
2018-08-07
3760
匿名内部类导致内存泄露的面试题
内存泄露一直是Java中需要避免的问题,也是面试时经常拿来考察编程能力的题目。比如下面这个问题,
PhoenixZheng
2018-08-07
6.6K0
如何跨app对其他应用进行虚拟点击
可能很多人在Android开发中会有这样的想法,如何模拟屏幕点击,向另外的app发送点击事件,来达到某种目的。 就像我们平时用 adb shell sendevent命令一样,模拟用户的一组输入操作,来实现自动化测试。
PhoenixZheng
2018-08-07
2.1K0
揭秘-Android刷量有多容易
做互联网开发的同学可能对流量这个词很熟悉, 在互联网行业中对一个产品的质量有一些关键指标,比如日活DAU,比如次日留存,点击率。 往往评估一个产品的变现能力会通过日活来计算。 因此也就诞生了一些灰色产业,专门在日活上做文章。 而作为金主(广告主)来说,如何判断一个产品的真实日活就显得非常重要了。 行业潜规则里,你自己家给的日活数据都要打个折。。除非能提供一些第三方的统计数据。
PhoenixZheng
2018-08-07
1.5K0
Java中如何操作超大数
我们知道Integer的最大值是 2^31 - 1,Long最大值是 2^63 -1, 不管是32位机还是64位机都是这样, 通常来说我们要操作一个大于 Integer最大值的数的时候会用 Long来进行, 但万一我们遇到一个比 Long的最大值还大的数怎么办呢?
PhoenixZheng
2018-08-07
4210
如何读写另外一个app的文件?
OK,上面的代码中规中矩, 只要有 File对象就可以用 FileOutputStream或者 FileReader来操作文件内容, 但! 如果是要读其他app的文件呢?
PhoenixZheng
2018-08-07
4940
只用一行代码的单例模式
作为Android开发者对Kotlin语言应该不会陌生, 下面这个单例模式就是用Kotlin写的,
PhoenixZheng
2018-08-07
3950
重新认识观察者模式
对于观察者模式,我们知道它是设计模式的一种, 利用接口将数据和使用数据的对象进行解耦。 如果你是个老鸟的话,就知道 Java的 util的 Observer接口是实现观察者模式的关键。 如果你是初学者的话对于观察者模式也应该不陌生, 比如Android的BaseAdapter使用的就是观察者模式。
PhoenixZheng
2018-08-07
2110
Android进阶资深开发必备技能-切面编程
切面编程听起来可能有点陌生,不过现在越来越多的开发团队正在用上这种技术。 先说熟悉的面向对象编程 OOP,通常都是用各种对象/模块来负责具体的功能,互相之间尽量不耦合。 切面编程AOP(aspect-priented programming)是为了解决OOP中耦合无法解除的问题而产生的。
PhoenixZheng
2018-08-07
7700
Android基础-Bitmap加载
Android开发中比较需要注意的是内存的消耗,而在平时开发中经常会遇到内存占用大的情况是对Bitmap的处理。 其中的基础之一是如何在保证不消耗过大内存的情况下加载一张大图。这也是面试中经常问的一道基础题。
PhoenixZheng
2018-08-07
6460
没有更多了
社区活动
【纪录片】中国数据库前世今生
穿越半个世纪,探寻中国数据库50年的发展历程
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档