一些国内 Android 开发者信息,欢迎提交修改
国外部分开发者信息
分享:
Android 问题交流讨论坛, 微信公众号:codekk, 网站:
Home Page: https://github.com/android-cn/android-discuss/issues
License: Apache License 2.0
一些国内 Android 开发者信息,欢迎提交修改
国外部分开发者信息
分享:
这个问题已经有了,暂时关掉吧。。。
如果后台服务开始后基本可以独立运行的话,可以用startService。音乐播放器就可以这样用。它们会一直运行直到你调用 stopSelf或者stopService。你可以通过发送Intent或者接收Intent来与正在运行的后台服务通信,但大部分时间,你只是启动服务并让它独立运行。如果你需要与后台服务通过一个持续的连接来比较频繁地通信,建议使用bind()。比如你需要定位服务不停地把更新后的地理位置传给UI。Binder比Intent开发起来复杂一些,但如果真的需要,你也只能使用它。
资料可见:https://github.com/iluwatar/java-design-patterns
Android 系统源码到处就是优秀的设计模式,你了解多少?评论举例看看
Android 的基础是 Java,对于一到两年的 Android 开发者一般我都会了解下他的 Java 基础怎么样。而聊的过程除了他自己提到的技术点外,一般还会问一些基础问题,比如
Java 中继承和接口的使用场景区别
从结果来看,不到 3% 的应聘者了解的程度我觉得能基本算过关的。
碰到问题,首先我们建议 Google,无果可 @ GitHub 上的 Android 开发者(好像我暴露他们了( ⊙ o ⊙ ))。
https://github.com/orgs/aosp-exchange-group/people
https://github.com/orgs/android-cn/people
部分不错的国内开发者:https://github.com/android-cn/android-dev-cn
部分不错的国外开发者(提问请用英文哦):https://github.com/android-cn/android-dev-com
如何把一个应用设置为系统应用,今天早上碰到的面试题
此问题已经迁移至精选话题 android-cn/topics#2 请大家移步讨论
1.启动Activity:系统会先调用onCreate方法,然后调用onStart方法,最后调用onResume,Activity进入运行状态。
2.当前Activity被其他Activity覆盖其上或被锁屏:系统会调用onPause方法,暂停当前Activity的执行。
3.当前Activity由被覆盖状态回到前台或解锁屏:系统会调用onResume方法,再次进入运行状态。
4.当前Activity转到新的Activity界面或按Home键回到主屏,自身退居后台:系统会先调用onPause方法,然后调用onStop方法,进入停滞状态。
5.用户后退回到此Activity:系统会先调用onRestart方法,然后调用onStart方法,最后调用onResume方法,再次进入运行状态。
6.当前Activity处于被覆盖状态或者后台不可见状态,即第2步和第4步,系统内存不足,杀死当前Activity,而后用户退回当前Activity:再次调用onCreate方法、onStart方法、onResume方法,进入运行状态。
7.用户退出当前Activity:系统先调用onPause方法,然后调用onStop方法,最后调用onDestory方法,结束当前Activity。
Android中有两种广播的注册方式:
1、静态注册:AndroidManifest.xml配置文件中;
2、动态注册:Java代码;
静态注册适用于全局广播;动态注册适用于局部广播;
Activity一共有以下四种launchMode:
1.standard
2.singleTop
3.singleTask
4.singleInstance
我们可以在AndroidManifest.xml配置的android:launchMode属性为以上四种之一即可。
下面我们结合实例一一介绍这四种lanchMode:
1.standard
standard模式是默认的启动模式,不用为配置android:launchMode属性即可,当然也可以指定值为standard。standard启动模式,不管有没有已存在的实例,都生成新的实例。
2.singleTop
我们在上面的基础上为指定属性android:launchMode="singleTop",系统就会按照singleTop启动模式处理跳转行为。跳转时系统会先在栈结构中寻找是否有一个Activity实例正位于栈顶,如果有则不再生成新的,而是直接使用。如果系统发现存在有Activity实例,但不是位于栈顶,重新生成一个实例。
这就是singleTop启动模式,如果发现有对应的Activity实例正位于栈顶,则重复利用,不再生成新的实例。
3.singleTask
如果发现有对应的Activity实例,则使此Activity实例之上的其他Activity实例统统出栈,使此Activity实例成为栈顶对象,显示到幕前。
4.singleInstance
这种启动模式比较特殊,因为它会启用一个新的栈结构,将Acitvity放置于这个新的栈结构中,并保证不再有其他Activity实例进入。
Android开发中何时使用多进程?使用多进程的好处是什么?
我也来贡献一个小问题表示支持!
这个问题我在Groupon Android Team面试的时候实际遇到过。
Android 开源项目源码解析网页版。反正只要是面高级开发者,我都会问他项目中使用的库原理,这是我对高级开发者一般的要求。
国内中大型的公司及优秀创业公司都比较看重原理,重知其然知其所以然。
JAVA反射机制是在#运行时#,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,
都能够调用它的任意一个方法;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。
Java反射机制主要提供了以下功能:
a)在运行时判断任意一个对象所属的类;
b)在运行时构造任意一个类的对象;
c)在运行时判断任意一个类所具有的成员变量和方法;
d)在运行时调用任意一个对象的方法;生成动态代理。
除了Log和断点,还有啥其他方式?
资料可见:https://github.com/pedrovgs/Algorithms
算法介绍可见:http://blog.csdn.net/v_JULY_v
算法是很多公司面试必须,国内 BAT 基本面试中都会有,尤以百度为盛。
稍微拓展一下,还可以说说 MVC 模式与 MVP 模式的区别,MVVM 呢?
Android 的基础是 Java,对于一到两年的 Android 开发者一般我都会了解下他的 Java 基础怎么样。而聊的过程除了他自己提到的技术点外,一般还会问一些基础问题,比如
String、StringBuilder、StringBuffer、CharSequence 的区别及使用场景
从结果来看,不到 5% 的应聘者了解的程度我觉得能基本算过关的。
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.