Android面试收集录 网络与加密
1.创建Socket对象需要至少指定哪些信息?
- IP(或域名)和端口号
- Socket socket=new Socket("www.baidu.com",80);
2.如何使用Socket连接服务器?
- 建立一个Socket对象:Socket socket=new Socket("192.168.17.100",8080);
- OutputStream os=socket.getOutputStream();
- OutputStreamWriter osw=new OutputStreamWriter(os);
- BufferedWriter bw=new BufferedWriter(osw);
- 向服务器写数据:bw.write("hello world"); bw.flush();
- 向服务器读数据:创建输入流同上,然后 while((s=br.readLine())!=null) ...
3.使用Socket成功连接服务器后,如何获取服务器的IP和域名?
- Socket socket=new Socket("www.baidu.com",80);
- socket.getInetAddress().getHostAddress();
- socket.getInetAddress().getHostName();
4.Java提供的7个基本缓冲区是什么?
- ByteBuffer
- ShortBuffer
- IntBuffer
- CharBuffer
- FloatBuffer
- DoubleBuffer
- LongBuffer
5.WebView如何使用,如何向前和向后浏览历史页面?
- WebView webView=(WebView)findViewById(R.id.webView);
- webView.loadUrl("http://www.baidu.com");
- 向前:webView.goForword();
- 向后:webView.goBack();
6.WebView如何显示一端String变量中的HTML代码?
- webView.loadDataWithBaseURL("图书名",html字符串,"text/html","utf-8",null);
- webView.getSettings().setJavaScriptEnabled(true); //打开JavaScript功能
- webView.setWebChromClient(new WebChromeClient()); //设置处理JavaScript的引擎
7.请描述Android中Java与JavaScript如何交互?
- 首先在Java中配置WebView的JavaScript,设置支持JavaScript,设置WebChromeClient等
- 在JavaScript中调用Java方法需要使用WebView.addJavascriptInterface方法
- 可以再JavaScript代码中调用window.接口名字.方法名字(参数名)来访问java方法
8.请说出Android支持哪些访问HTTP资源的方式?
- DefaultHttpClient通过HttpGet和HttpPost分别封装了GET和POST请求。
- HttpURLConnection通过URL的构造方法,通过URL.openConnection方法获取HttpURLConnection
9.上传文件到服务器,需要注意哪几点呢?
- 如果使用HttpURLConnection对象向服务端发送数据,需要使用setDoOutput方法打开输入开关
- 需要设置请求方法:httpURLConnection.setRequestMethod("POST");
- 文件开头需要分界符:httpURLConnection.setRequestProperty("Content-Type","multipart/form-data;boundary="+boundary);
- 文件结尾需要分界符:dos.writeBytes(twoHyphens+boundary+"--"+end);
10.请简要解释一下什么叫HTTPS?
- Secure Hypertext Transfer Protocal,安全超文本传输协议
- HTTP的安全版本
- 在HTTP下加入SSL层
11.Android SDK支持访问HTTPS资源吗?
- 支持的
- 需要信任所有的host
- 然后像访问HTTP资源一样使用httpClient和httpPost即可
12.Android SDK 支持几种加密技术?
- 4种
- MD5+SHA+HMAC 不可逆
- AES 可逆
Android面试收集录 网络与加密的更多相关文章
- Android面试收集录 Android入门
1.Android的特点有哪些? 编程语言是Java或Kotlin,Android中的Java字节码是允许在Dalvik虚拟机上的 支持4大组件 Android内置了WebKit核心的浏览器,支持H5 ...
- Android面试收集录14 Android进程间通信方式
一.使用 Intent Activity,Service,Receiver 都支持在 Intent 中传递 Bundle 数据,而 Bundle 实现了 Parcelable 接口,可以在不同的进程间 ...
- Android面试收集录6 事件分发机制
转自:秋招面试宝典. 一. 基础认知 1.1 事件分发的对象是谁? 答:事件 当用户触摸屏幕时(View或ViewGroup派生的控件),将产生点击事件(Touch事件). Touch事件相关细节(发 ...
- Android面试收集录2 Broadcast Receiver详解
1.Broadcast Receiver广播接收器简单介绍 1.1.定义 Broadcast Receiver(广播接收器),属于Android四大组件之一 在Android开发中,Broadcast ...
- Android面试收集录 Android系统的资源+其他
1.Android应用程序的资源是如何存储的,如何使用? res文件夹或者assets文件夹 res目录中的资源在R类中生成一个int变量,然后再布局文件中可以直接使用,在代码中,要getResour ...
- Android面试收集录 2D绘图与动画技术
1.如何在Android应用程序的窗口上绘制图形? 继承View 实现View中的onDraw()方法 2.如何绘制圆,空心椭圆? canvas.drawArc或canvas.drawCircle方法 ...
- Android面试收集录 电话、短信和联系人、多媒体技术
1.请写出调用系统拨号界面? Intent intent=new Intent(Intent.ACTION_DIAL,Uri.pase("tel:12345678910")); s ...
- Android面试收集录 数据库
1.SQLite数据库如何查询表table1的第20条到30条记录? select * from table1 limit 19,11 ==>从19开始,11个数据 2.如何才能将table ...
- Android面试收集录 文件存储
1.请描述Android SDK支持哪些文件存储技术? 使用SharePreferences保存key-value类型的数据 流文件存储(openFileOutput+openFileInput或Fi ...
随机推荐
- Oracle调优-常用表KEEP到内存中
数据迁移后性能受到影响,需要将老数据库中keep到内存中的表在新库中keep到内存中,使用如下方法. 新库设置db_keep_cache_size为适当值,这个值的大小不能小于需要keep的表的大小. ...
- [原]Machine Learing 入门 —— 开门第0篇
一.最近懒了 7月没怎么写博客,倒是一直在学Machine Learning的入门知识,在这里给大家推荐一个不错的自学网站:https://www.coursera.org/ ,Andrew Ng是联 ...
- 团队第三次scrum
长大一条龙之课表查询 一.设计概要 本次内容主要是实现了长大一条龙系统的课表查询功能,我们的这个项目严格遵守MVC架构,采用前后端分离的策略.我们将课表查询分为二层,DAO层:负责与数据进行交互,读写 ...
- serlvet配置xml和@WebServlet
简单介绍 XML元素不仅是大小写敏感的,而且它们还对出现在其他元素中的次序敏感.例如,XML头必须是文件中的第一项,DOCTYPE声明必须是第二项,而web-app元素必须是第三项.在web-app元 ...
- Unity3d获得Android和ios设备的唯一标识
android为mac地址,ios为advertisingIdentifier 函数都比较简单,网上也搜得到,我也就不多说了,主要是对于我们没做过安卓和IOS开发的人来说,整合进工程有各种的问题. 我 ...
- Java基础知识(持续更新中...)
1.成员变量:全局变量/字段(Field),不要称之为属性(错误)直接定义在类中,方法外面 1.类成员变量 使用static修饰的变量 2.实例成员变量 没用使用static修饰的变量 局部变量 ...
- Spring知识点总结(四)之SpringAOP基础
1. Spring aop中的基本概念 • 连接点(Joinpoint):在程序执行过程中某个特定的点,比如某方法调用的时候或者处理异常的时候.在Spring AOP中,一个连接 ...
- [Oracle]Oracle表权限小结
在数据库中,表是我们接触得最多的数据库对象,接下来对与表有关的系统权限与对象权限做一个小结. (1)与表有关的系统权限 CREATE TABLE 在当前Schema中创建.删除.修改表. SELECT ...
- 'version' contains an expression but should be a constant. @ line 13, column 11问题的解决
<modelVersion>4.0.0</modelVersion> <groupId>cy.nad.cyg</groupId> <artifac ...
- WebSocket 和socket 的区别
去年光棍节的时候,我写过一篇 quick-cocos2d-x 中的 socket 技术选择:LuaSocket 和 WebSocket .这篇文章介绍了我为何决定在项目中使用 LuaSocket . ...