移动开发最新Android 解析imei,android面试常问项目难点

结语

  • 现在随着短视频,抖音,快手的流行NDK模块开发也显得越发重要,需要这块人才的企业也越来越多,随之学习这块的人也变多了,音视频的开发,往往是比较难的,而这个比较难的技术就是NDK里面的技术。
  • 音视频/高清大图片/人工智能/直播/抖音等等这年与用户最紧密,与我们生活最相关的技术一直都在寻找最终的技术落地平台,以前是windows系统,而现在则是移动系统了,移动系统中又是以Android占比绝大部分为前提,所以AndroidNDK技术已经是我们必备技能了。
  • 要学习好NDK,其中的关于C/C++,jni,Linux基础都是需要学习的,除此之外,音视频的编解码技术,流媒体协议,ffmpeg这些都是音视频开发必备技能,而且
  • OpenCV/OpenGl/这些又是图像处理必备知识,下面这些我都是当年自己搜集的资料和做的一些图,因为当年我就感觉视频这块会是一个大的趋势。所以提前做了一些准备。现在拿出来分享给大家。

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

import android.app.Activity;

import android.os.Bundle;

import android.telephony.CellLocation;

import android.telephony.PhoneStateListener;

import android.telephony.TelephonyManager;

public class TelManager extends Activity {

@Override

protected void onCreate(Bundle savedInstanceState) {

super .onCreate(savedInstanceState);

TelephonyManager tm = (TelephonyManager) this .getSystemService(TELEPHONY_SERVICE);

/*

* 电话状态:

* 1.tm.CALL_STATE_IDLE=0 无活动

* 2.tm.CALL_STATE_RINGING=1 响铃

* 3.tm.CALL_STATE_OFFHOOK=2 摘机

*/

tm.getCallState();//int

/*

* 电话方位:

*

*/

tm.getCellLocation();//CellLocation

/*

* 唯一的设备ID:

* GSM手机的 IMEI 和 CDMA手机的 MEID.

* Return null if device ID is not available.

*/

tm.getDeviceId();//String

/*

* 设备的软件版本号:

* 例如:the IMEI/SV(software version) for GSM phones.

* Return null if the software version is not available.

*/

tm.getDeviceSoftwareVersion();//String

/*

* 手机号:

* GSM手机的 MSISDN.

* Return null if it is unavailable.

*/

tm.getLine1Number();//String

/*

* 附近的电话的信息:

* 类型:List

* 需要权限:android.Manifest.permission#ACCESS_COARSE_UPDATES

*/

tm.getNeighboringCellInfo();//List

/*

* 获取ISO标准的国家码,即国际长途区号。

* 注意:仅当用户已在网络注册后有效。

* 在CDMA网络中结果也许不可靠。

*/

tm.getNetworkCountryIso();//String

/*

* MCC+MNC(mobile country code + mobile network code)

* 注意:仅当用户已在网络注册时有效。

* 在CDMA网络中结果也许不可靠。

*/

tm.getNetworkOperator();//String

/*

* 按照字母次序的current registered operator(当前已注册的用户)的名字

* 注意:仅当用户已在网络注册时有效。

* 在CDMA网络中结果也许不可靠。

*/

tm.getNetworkOperatorName();//String

/*

* 当前使用的网络类型:

* 例如: NETWORK_TYPE_UNKNOWN 网络类型未知 0

NETWORK_TYPE_GPRS GPRS网络 1

NETWORK_TYPE_EDGE EDGE网络 2

NETWORK_TYPE_UMTS UMTS网络 3

NETWORK_TYPE_HSDPA HSDPA网络 8

NETWORK_TYPE_HSUPA HSUPA网络 9

NETWORK_TYPE_HSPA HSPA网络 10

NETWORK_TYPE_CDMA CDMA网络,IS95A 或 IS95B. 4

NETWORK_TYPE_EVDO_0 EVDO网络, revision 0. 5

NETWORK_TYPE_EVDO_A EVDO网络, revision A. 6

NETWORK_TYPE_1xRTT 1xRTT网络 7

*/

tm.getNetworkType();//int

/*

* 手机类型:

* 例如: PHONE_TYPE_NONE 无信号

PHONE_TYPE_GSM GSM信号

PHONE_TYPE_CDMA CDMA信号

*/

tm.getPhoneType();//int

/*

* Returns the ISO country code equivalent for the SIM provider’s country code.

* 获取ISO国家码,相当于提供SIM卡的国家码。

*

*/

tm.getSimCountryIso();//String

/*

* Returns the MCC+MNC (mobile country code + mobile network code) of the provider of the SIM. 5 or 6 decimal digits.

* 获取SIM卡提供的移动国家码和移动网络码.5或6位的十进制数字.

* SIM卡的状态必须是 SIM_STATE_READY(使用getSimState()判断).

总结

开发是面向对象。我们找工作应该更多是面向面试。哪怕进大厂真的只是去宁螺丝,但你要进去得先学会面试的时候造飞机不是么?

作者13年java转Android开发,在小厂待过,也去过华为,OPPO等,去年四月份进了阿里一直到现在。等大厂待过也面试过很多人。深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长,不成体系的学习效果低效漫长且无助。

这里附上上述的技术体系图相关的几十套腾讯、头条、阿里、美团等公司的面试题,把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节,由于篇幅有限,这里以图片的形式给大家展示一部分。

相信它会给大家带来很多收获:

960页全网最全Android开发笔记

资料太多,全部展示会影响篇幅,暂时就先列举这些部分截图

当程序员容易,当一个优秀的程序员是需要不断学习的,从初级程序员到高级程序员,从初级架构师到资深架构师,或者走向管理,从技术经理到技术总监,每个阶段都需要掌握不同的能力。早早确定自己的职业方向,才能在工作和能力提升中甩开同龄人。

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 26
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值