安卓随笔

有点乱 随便记了点

android:orientation="vertical" 设置垂直排列
 horizontal 水平排列 ,这是默认

 layout_gravity:是LineaLayout的属性,是用于指定控件在布局中的对齐方式

 HTTP协议工作于客户端-服务端架构上。浏览器作为HTTP客户端通过URL向HTTP服务端即WEB服务器发送所有请求。
 
 一个HTTP"客户端"是一个应用程序(Web浏览器或其他任何客户端),通过连接到服务器达到向服务器发送一个或多个HTTP的请求的目的。

//广播
 使用LocalBroadCastManager对本地广播管理

 SharedPreferences 的get方法 两个参数,1.键 2.当键不存在时的默认返回值


 服务不会自动开启线程,默认运行在主线程,需要在服务的内手动创建子线程, 在子线程执行具体的任务,否则主线程可能被阻塞.

 example: 使用匿名类创建子线程

  new Thread(new Runnable() {
            @Override
            public void run() {

            }
        }).start();


 安卓多线程简述: 执行一些比较耗时的操作,比如发送网络请求.服务器未必立即响应请求,需要将这些操作放在子线程中去运行,否则可能阻塞主线程, 不能在子线程中操作UI,更新UI的操作只能在主线程。

 消息队列*MessageQue用来存放Handler 发送的消息,每个线程只会有一个消息队列对象

 Handler不仅发送消息(sendMessage),还处理消息(handleMessage)


 关于服务抽象类Service:
  Service类只有一个抽象方法onBind.子类必须实现它
  启动/停止服务:startService()/stopService

  活动通过Binder对象管理Service

 使用前台服务使其不会因内存不足而被回收,前台服务的关键api: startForeground()

 getInputStream()获取的服务器返回的输入流


 安卓通过内容提供器 * Content Provider实现不同应用程序之间数据共享
 

 Android studio中调出快捷键,快速try catch包括代码块 ,选择要包裹的代码块,然后按下ctrl + alt + t 


网络七层: 物理层,数据链路层,网络层,传输层(TCP),会话层,表示层,应用层(Http)


Socket 服务端

Step 1:创建ServerSocket对象,绑定监听的端口

Step 2:调用accept()方法监听客户端的请求

Step 3:连接建立后,通过输入流读取客户端发送的请求信息

Step 4:通过输出流向客户端发送响应信息

Step 5:关闭相关资源


Socket 客户端

Step 1:创建Socket对象,指明需要链接的服务器的地址和端号

Step 2:链接建立后,通过输出流向服务器发送请求信息

Step 3:通过输出流获取服务器响应的信息

Step 4:关闭相关资源


 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值