首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    知识总结:安卓工程师养成计划计算机基础细分方向知识算法

    楼主Android菜鸡一枚,今年校招侥幸拿到了还不错的offer。因为校招实在过于侥幸,面试上很少遇到复杂的问题,这里就不写面经了,初略谈一谈校招的一些准备吧。可能有些认知偏差,请各位大佬轻喷。 一般国内企业招聘技术岗都会细分方向(客户端、前端、服务端等等),所以我个人会将笔试面试准备的内容大致分为三部分:计算机基础、细分方向知识和算法。 计算机基础 计算机基础无外乎是数据结构、计算机网络、操作系统、数据库、计算机组成原理(微机)和编译原理这些内容。鉴于楼主走的是Android方向,计算机基础是按照上面的顺

    06

    Android开发者应该深入学习的10个开源应用项目

    Android开发带来新一轮热潮让很多移动开发者都投入到这个浪潮中去了,创造了许许多多相当优秀的应用。其中也有许许多多的开发者提供了应用开 源项 目,贡献出他们的智慧和创造力。学习开源代码是掌握技术的一个最佳方式。下面推荐几个应用开源项目,这些项目不仅提供了优秀的创意,也可以直接掌握 Android内核的接口使用. 1.Android团队提供的示例项目 如果不是从学习Android SDK中提供的那些样例代码开始,可能没有更好的方法来掌握在Android这个框架上开发。由Android的核心开发团队提供了15个优秀的示例项 目,包含了游戏、图像处理、时间显示、开始菜单快捷方式等。 地址: http://developer.android.com/resources/index.html 2.Remote Droid RemoteDroid是一个Android应用,能够让用户使用自己的无线网络使用无线键盘、触摸屏操作手机。这个项目为开发者提供了如网络连接、触 摸屏手指运动等很好的样例。 地址: http://code.google.com/p/remotedroid/ 3.TorProxy和Shadow TorProxy应用实现了Android手机无线电电传通讯(TOR),和Shadow应用一起使用,可以使用手机匿名上网。从该项目源代码中,可以 掌握socket连接、管理cookie等方法。 地址: http://www.cl.cam.ac.uk/research/dtg/code/svn/android-tor/ 4、 Android SMSPopup SMSPopup可以截获短信内容显示在一个泡泡形状的窗口中。从这个项目中可以掌握到如何使用内置的短信SMS接口。 地址: http://code.google.com/p/android-smspopup/ 5、 Standup Timer Standup Timer应用用于控制站立会议时间,类似秒表倒计时,可以提醒每个人的讲话时间已到,从而保证每个与会者使用时间一样。从该项目的代码中,可以学会如何 使用时间函数。另外,这个项目的代码是采用视图view、模型model严格分离的设计思路。 地址: http://github.com/jwood/standup-timer 6、 Foursquare 是Foursquare.com的一个客户端应用,该应用主要分为两个模块:API(com.joelapenna.foursquare)和界面前端 (com.joelapenna.foursquared)两部分。从该项目代码中,可以学会如何同步、多线程、HTTP连接等技术。 地址: http://code.google.com/p/foursquared/ 7、 Pedometer Pedometer应用用于记录你每天走路步[]数的。尽管记录不一定精准,但是从这个项目中,可以学习几个不同的技术:加速器交互、语音更新、后台运行服 务等。 地址: http://code.google.com/p/pedometer/ 8、 OpenSudoku-android OpenSudoku是一个简单的九宫格数独游戏。从代码中可以学习到如何在视图中显示表格数据,以及如何和一个网站交互等技术。 地址: http://code.google.com/p/opensudoku-android 9、 ConnectBot ConnectBot是Android平台的一个客户端安全壳应用。从该项目代码中,可以学习到很多Android安全方面的内容,这些是你在开发应用 时经常需要考虑的安全问题。 地址: http://code.google.com/p/connectbot/ 10、 WordPress的Android应用 当然在最后不能不提Wordpress的Android应用了,这是Wordpress官方开发团队提供的一个项目。从代码中可以学习到XMLRPC调 用(当然还有更多的优秀内容)。 地址: http://android.svn.wordpress.org/trunk/

    02

    Android文件系统的结构及目录用途、操作方法 整理「建议收藏」

    android源码编译后得到system.img,ramdisk.img,userdata.img映像文件。其中, ramdisk.img是emulator的文件系统,system.img包括了主要的包、库等文件,userdata.img包括了一些用户数据,emulator加载这3个映像文件后,会把 system和 userdata分别加载到 ramdisk文件系统中的system和 userdata目录下。因此,我们可以把ramdisk.img里的所有文件复制出来,system.img和userdata.img分别解压到 ramdisk文件系统中的system和 userdata目录下。 2、分离android文件系统出来 system.img,ramdisk.img,userdata.img映像文件是采用cpio打包、gzip压缩的,可以通过file命令验证: file ramdisk.img,输出: ramdisk.img: gzip compressed data, from Unix, last modified: Wed Mar 18 17:16:10 2009 Android源码编译后除了生成system.img,userdata.img之外还生成system和 userdata文件夹,因此不需要解压它们。Android源码编译后还生成root文件夹,其实root下的文件与 ramdisk.img 里的文件是一样的,不过这里还是介绍怎样把 ramdisk.img解压出来: 将ramdisk.img复制一份到任何其他目录下,将其名称改为ramdisk.img.gz,并使用命令 gunzip ramdisk.img.gz 然后新建一个文件夹,叫ramdisk吧,进入,输入命令 cpio -i -F ../ramdisk.img 这下,你就能看见并操作ramdisk里面的内容了。 然后把Android源码编译后生成的system和 userdata里的文件复制到 ramdisk/system和 ramdisk/userdata下。这样就得到一个文件系统了。 3、使用网络文件系统方式挂载android文件系统 因此,我们需要建立/nfsroot目录,再建立/nfsroot/androidfs目录,把刚才的android文件系统改名为androidfs,并链接到/nfsroot/androidfs 4、android内核引导文件系统 android内核挂载/nfsroot/androidfs之后,根据init.rc,init.goldfish.rc来初始化并装载系统库、程序等直到开机完成。init.rc脚本包括了文件系统初始化、装载的许多过程。init.rc的工作主要是: 1)设置一些环境变量 2)创建system、sdcard、data、cache等目录 3)把一些文件系统mount到一些目录去,如,mount tmpfs tmpfs /sqlite_stmt_journals 4)设置一些文件的用户群组、权限 5)设置一些线程参数 6)设置TCP缓存大小 5、操作android的一些方法 您应该已经知道,Android 的核心作业系统是Linux (现在用的版本是2.6.25)。因此内部的档案系统,与系统目录等,也和Linux 脱不了关系。要如何观察这些系统目录,到底藏了什么秘密呢? 在Eclipse 环境中,你可以用DDMS 来观察。不过这个DDMS 在我的电脑上的执行速度,实在太慢了。我个人的偏好是,直接用adb shell 来观察。 启动adb shell 的用法如下: 1). 在Windows 中,开启一个命令列视窗(或执行cmd.exe 这个程式) 2). cd <android-sdk-install_path>/tools 3). adb shell 当你看到这个# 提示字元时,就表示你已经进入模拟器的系统。接下来,你就可以用Linux 上的指令来浏览这些目录。像是 cd, ls, pwd, cat, rm 等等。 这里面,有几个目录是和Android 相关的,特地将他整理下来,供你参考。

    03
    领券