学习分享,共勉
Android高级架构师进阶之路
题外话,我在阿里工作多年,深知技术改革和创新的方向,Android开发以其美观、快速、高效、开放等优势迅速俘获人心,但很多Android兴趣爱好者所需的进阶学习资料确实不太系统,完整。今天我把我搜集和整理的这份学习资料分享给有需要的人
- Android进阶知识体系学习脑图
- Android进阶高级工程师学习全套手册
- 对标Android阿里P7,年薪50w+学习视频
- 大厂内部Android高频面试题,以及面试经历
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
@Url(“this is a url”)
class UrlActivity : AppCompatActivity() {
…
}
然后创建一个被 @Router
注解的类,用来告诉RxRouter这里有一个路由器:
@Router
class MainRouter{
}
这个类不需要有任何其余的代码,RxRouter会根据这个类的类名自动生成一个 RouterProvider
,比如这里的 MainRouter
将会生成 MainRouterProvider
.
接着我们需要把这些路由器添加到 RxRouterProviders
中:
class CustomApplication : Application() {
override fun onCreate() {
super.onCreate()
RxRouterProviders.add(MainRouterProvider())
}
}
最后,就可以开始我们的表演了:
RxRouter.of(context)
.route(“this is a uri”)
.subscribe()
参数传递
携带参数跳转:
通过with方法,你可以给本次路由添加一系列参数.
RxRouter.of(context)
.with(10) //int value
.with(true) //boolean value
.with(20.12) //double value
.with(“this is a string value”) //string value
.with(Bundle()) //Bundle value
.route(“this is a uri”)
.subscribe()
不再需要 onActivityResult
方法了
想要获取跳转返回的值?再也不用写一大堆 onActivityResult
方法了!链式调用,一步到位!
RxRouter.of(context)
.with(false)
.with(2000)
.with(9999999999999999)
.route(“this is a uri”)
.subscribe {
if (it.resultCode == Activity.RESULT_OK) {
val intent = it.data
val stringResult = intent.getStringExtra(“result”)
result_text.text = stringResult
stringResult.toast()
}
}
如果有结果返回,在subscribe中处理就行了.
Class 跳转
不想用Url注解?没问题,RxRouter同样支持原始的指定类名的跳转方式,和url跳转的方式相同:
RxRouter.of(context)
.routeClass(ClassForResultActivity::class.java)
.subscribe{
if (it.resultCode == Activity.RESULT_OK) {
val intent = it.data
val stringResult = intent.getStringExtra(“result”)
result_text.text = stringResult
stringResult.toast()
}
}
Action 跳转
同样的,RxRouter也支持系统的Action和自定义的Action跳转.
自定义Action跳转:
RxRouter.of(context)
.routeAction(“zlc.season.sample.action”)
.subscribe({
“no result”.toast()
}, {
it.message?.toast()
})
系统Action跳转:
//拨打电话
RxRouter.of(this)
.addUri(Uri.parse(“tel:123456”))
.routeSystemAction(Intent.ACTION_DIAL)
重要知识点
下面是有几位Android行业大佬对应上方技术点整理的一些进阶资料。
高级进阶篇——高级UI,自定义View(部分展示)
UI这块知识是现今使用者最多的。当年火爆一时的Android入门培训,学会这小块知识就能随便找到不错的工作了。不过很显然现在远远不够了,拒绝无休止的CV,亲自去项目实战,读源码,研究原理吧!
- 面试题部分合集
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!