随笔分类 - 工作需要———安卓app学习
摘要:http方式上传: package com.example.chapter14.util; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.util.Log; import j
阅读全文
摘要:<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/to
阅读全文
摘要:尽管直接使用GET方式也能下载网络文件,但这种方式存在以下缺点: (1)无法断点续传,一旦中途失败,只能从头开始获取。(2)不是真正意义上的下载操作,没法设置下载参数。(3)下载过程中无法在界面上展示下载状态。 布局: <LinearLayout xmlns:android="http://sche
阅读全文
摘要:GET方式的毛病在于:请求参数只能以“参数名=参数值&参数名=参数值”这样的格式添加到接口地址末尾,使得它无法传送复杂结构的请求报文。 POST方式把接口地址与请求报文分开,允许使用自定义的报文格式(如JSON),由此扩大了该方式的应用场景。 布局: <LinearLayout xmlns:andr
阅读全文
摘要:HttpURLConnection访问HTTP接口的注意点:(1)HttpURLConnection默认采取UTF-8编码,但服务器可能返回GBK编码的报文;(2)有时服务器会先压缩应答报文,再把压缩后的数据送给调用方;(3)服务器返回报文超长的时候,不要企图一次性把返回数据读到某个字节数组,而要循
阅读全文
摘要:网络通信的交互数据格式有两大类,分别是JSON和XML 。 对于App来说,基本采用JSON格式与服务器通信。 JSON相比XML的优势主要有两个:(1)手机流量很贵,表达同样的信息,JSON串比XML串短很多。(2) JSON串解析得更快,也更省电,XML不但慢而且耗电。 (1)整个JSON串由一
阅读全文
摘要:布局: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"
阅读全文
摘要:从视频库中选取视频 系统自带的相册既保存图片又保存视频,这意味着用户能够从中选择已有的视频。 打开视频库之前,需要指定数据类型为视频,相关代码代码示例如下: Intent intent = new Intent(Intent.ACTION_GET_CONTENT); // 创建一个内容获取动作的意图
阅读全文
摘要:通过系统自带的摄像机可以很方便地录制视频,只要指定摄像动作为MediaStore.ACTION_VIDEO_CAPTURE即可。 当然,需要事先设定下列的录像参数: 1、MediaStore.EXTRA_VIDEO_QUALITY:用于设定视频质量;2、MediaStore.EXTRA_SIZE_L
阅读全文
摘要:布局: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"
阅读全文
摘要:利用MediaPlayer播放音频 若要在App内部自己播音,可使用媒体播放器MediaPlayer,具体的实现步骤如下: (1)声明音频类型的实体对象; (2)通过内容解析器查询系统的音频库,把符合条件的音频记录依次添加到音频列表; (3)找到若干音频文件之后,再利用MediaPlayer来播音;
阅读全文
摘要:使用录音机录制音频 权限: <!-- 相机 --> <uses-permission android:name="android.permission.CAMERA" /> <!-- 录音 --> <uses-permission android:name="android.permission.R
阅读全文
摘要:图像解码器ImageDecoder 早期的Android只支持三种图像格式:JPEG、PNG和GIF,而且图像视图仅能显示动图的初始画面,无法直接播放动画效果。 时代呼唤技术更先进的图像压缩算法,谷歌推出了WebP格式,苹果推出了HEIF格式。WebP与HEIF都具备了下列特性: (1)支持透明背景
阅读全文
摘要:当图像视图的缩放类型为fitCenter时,如果图片的尺寸超过4096*4096,App运行会崩溃。 若想解决加载超大图片的问题,有下列几种方案: (1)在显示图片之前调用setLayerType方法,将图层类型设置为软件加速,此时系统会对该视图关闭硬件加速。 (2)把图像视图的缩放类型改为cent
阅读全文
摘要:系统相册既支持只选择一张图片,也支持同时选择多张图片。 跳到系统相册的代码例子如下: // 创建一个内容获取动作的意图(准备跳到系统相册) Intent albumIntent = new Intent(Intent.ACTION_GET_CONTENT); albumIntent.putExtra
阅读全文
摘要:手机拍照的编码实现主要有两种:(1)通过Camera工具联合表面视图SurfaceView,由开发者实现拍照细节;(2)借助系统相机自动拍照,也就是跳到系统相机页面,由系统相机拍摄照片; Intent photoIntent = new Intent(MediaStore.ACTION_IMAGE_
阅读全文
摘要:xml布局: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_paren
阅读全文
摘要:RecyclerView可取代ListView和GridView,同样ViewPager2可取代ViewPager。 与ViewPager相比,ViewPager2支持更丰富的界面特效,包括: (1)不但支持水平方向翻页,还支持垂直方向翻页;(2)支持RecyclerView.Adapter,也允许
阅读全文
摘要:<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" andr
阅读全文
摘要:xml布局: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_paren
阅读全文