首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

开发_浅谈AsyncTask

一、先介绍一下AsyncTask:   在开发Android移动客户端时候往往要使用多线程来进行操作,我们通常会将耗时操作放在单独线程执行,避免其占用主线程而给用户带来不好用户体验。...但是费时任务操作总会启动一些匿名子线程,太多子线程给系统带来巨大负担,随之带来一些性能问题。因此android提供了一个工具类AsyncTask,顾名思义异步执行任务。...这个AsyncTask生来就是处理一些后台比较耗时任务,给用户带来良好用户体验,从编程语法上显得优雅了许多,不再需要子线程和Handler就可以完成异步操作并且刷新用户界面。...二、构建AsyncTask子类参数   AsyncTask是一个抽象类   通常用于被继承,继承AsyncTask需要指定如下三个泛型参数:   Params...=null && as.getStatus()==AsyncTask.Status.RUNNING) 46 { 47 //只是将对于AsyncTask标记为

1.7K70

topic-意图 Intent

意图中重要核心组件之一。 Intent 是一个消息传递对象,您可以使用它从其他应用组件请求操作。...隐式 Intent :不会指定特定组件,而是声明要执行常规操作,从而允许其他应用中组件来处理它。...** 找到匹配项之后,[3] 该系统通过调用匹配 Activity(Activity B) onCreate() 方法并将其传递给 Intent,以此启动匹配 Activity](http://upload-images.jianshu.io...PendingIntent 主要目的是授权外部应用使用包含 Intent,就像是它从您应用本身进程中执行一样。...Intent 操作 Intent 数据(URI 和数据类型) Intent 类别 下文根据如何在应用清单文件中声明 Intent 过滤器,描述 Intent 如何与相应组件匹配。

1.3K10
您找到你想要的搜索结果了吗?
是的
没有找到

应用安全指南 4.7 使用可浏览意图

使用“可浏览意图”来对付这些风险时有一些要注意地方。 4.7.1 示例代码 使用“可浏览意图应用示例代码如下: 要点: 1) (网页侧)不得包含敏感信息。...”时,需要遵循以下规则: 4.7.2.1 (网页端)敏感信息不得包含在相应链接参数中(必需) 当点击浏览器中链接时,会发出一个意图,该意图数据中有 URL 值(可以通过Intent#getData...获取),并且带有相应意图过滤器应用,从 Android 系统启动。...此时,当几个应用设置意图过滤器来接收相同 URI 模式时,应用选择对话框将显示,与隐式意图正常启动相同,并启动用户选择应用。...在设计应用时必须记住它,并且由’可浏览意图’启动应用,等同于由隐式意图启动,并且不保证启动了有效应用。

52410

基础干货(三):数据学习

---- title: 基础干货(三):数据学习 copyright: true categories: 基础干货 date: 2018-01-10 19:35:26 tags: [Android...BLOB(二进制对象)数据类型,也接受varchar(n)、char(n)、decimal(p,s) 等数据类型, SQLite最大特点是你可以把各种类型数据保存到任何字段中,而不用关心字段声明数据类型是什么...helper = new DBHelper(this, "account.db", null, 1); onCreate是在数据库创建时候调用,主要用来初始化数据表结构和插入数据初始化记录...onUpGrade是在数据库版本升级时候调用,主要用来改变表结构 2、调用db = helper.getWritableDatabase(),得到数据对象 数据库sql语句增删改查 创建表结构:...; 使用cd切换到数据库文件所在目录; 使用sqlite3 数据库文件名称打开数据; 使用增删改查语句操作数据库。

2.7K20

基础干货(八):进程学习

windows下服务:没有界面、长期运行在后台应用程序; android下服务:应用程序一个组件,没有界面activity,长期运行在后台; 进程:是应用程序运行载体。...,它会按照进程优先级,从低到高一级一级杀死进程,直到内存空间被清理差不多。...(View view){ myBinder.callMethodInService(); } 绑定服务应用场景 应用场景: 1、需要在后台运行一定业务逻辑,而且需要与服务器端交互数据...(重点) 本地服务:写在自己应用程序工程里服务 ,使用自己应用程序进程运行这个服务; 远程服务:写在别的应用程序工程里服务,使用别的应用程序进程运行这个服务(安装在同一个手机上应用程序)...; IPC: Inter Process Communication(进程间通讯); aidl: Android Interface definition language 接口定义语言; aidl

4K10

基础干货(七):广播学习

4.0版本之后为了安全考虑,要求应用程序必须要有界面,必须被用户运行过一次,广播接受者才会生效 4.0版本强行停止相当于冻结一个应用,一旦应用程序被用户强行停止了,广播接受者就不会生效了。...2.3模拟器,4.0之后版本没有卸载、挂载、移除SD卡功能。...", 0).show(); } } } 发送自定义广播 创建广播电台步骤: //创建一个传递消息意图对象 Intent intent = new Intent(); //...设置要广播事件类型 intent.setAction("com.itheima.broadcast.HMSSDT"); //设置广播消息数据 intent.putExtra("news", "黑马...给消息指定初始代码 //initialData 指定消息数据 //initialExtras 指定额外参数 sendOrderedBroadcast(intent, null, null, null

3.9K10

日历_公认不卡手机

本篇文章主要说一下月日历数据、月视图绘制以及点击日期实现。 数据 数据部分,网上能找到比较完整工具类,主要是根据本月和上月天数以及本月第一天是周几来计算。...1 再计算本月日期:本月内数据根据该月天数跑循环。...一月数据: List date = new ArrayList(); int j = 1; for (int i = 0; i < 42; i++) { if (i <...数据有了,接着就是绘制这些数据。 MonthView MonthView继承于View,重写onDraw(canva)方法。...: 1、是不是本月数据(用颜色区分本月和其他月数据) 2、是不是今天 3、有没有选中日期 4、显示不显示农历 其中今天和选中日期用圆环表示,就需要在当天和选中日期矩形中绘制圆环。

4.8K30

开发之数据共享

一、数据共享作用 当我们需要把应用程序数据共享给其他应用程序(当然有的可能会混淆SharedPreferences)这个时候需要用到开发中另外一个组件(ContentProvider),这样组件是不论程序是否启动...提供不同访问来请求指定数据 三、如何提供ContentProvider 1、定义一个ContentProvider继承ContentProvider 2、在AndroidManifest.xml文件注册...(需要android:anthorities属性) 四、使用ContentProvider 1、介绍Uri 1.1、访问Uri比如:content://study.provider/book(这里...book是请求对象是可以改变,content是固定格式,中间部分是那个注册ContentProvider时候那个authority属性值) 2、使用ContentResolver操作数据 2.1常见方法...提供数据动态变化那么就需要使用ContentObserver(自行查看手册)

1.5K60

基础干货(六):Activity学习

, android.intent.category.TV 意图设置动作激活新界面(重点) Intent 意图:做一件事情想法。...uri = intent.getData(); 意图设计目的 意图设计目的:解耦,实现应用程序高内聚、低耦合。...隐式意图和显式意图(重点) 隐式意图:开启activity时候不需要直接指定activity名称,通过指定一组动作和数据,让系统来找到这个特定activity。...(); b.putString("name", "itheima"); b.putInt("age", 6); intent.putExtras(b); startActivity(intent); 意图传递数据...(重点) 可以数据类型: 1、8大基本数据类型、数组; 2、Bundle类似于map数据结构; 3、Parcelable 序列化到内存; 4、Serializable 序列化到文件; 代码: 使用显示意图

2.8K10

基础干货(五):线程与数据上传下载学习

使用POST方式提交数据中文乱码解决方法(重点) 解决办法:使用客户端和服务器两边字符集编码保持一致。...UTF-8, 使用GET方式提交数据中文乱码解决方法 使用URLEncoder.encode(name,"UTF-8")进行url编码: String path = "http://192.168.22.136...(重点) apache httpClient 轻量级浏览器: 使用GET方式数据步骤: 1、创建一个浏览器: 2、输入一个网址: 3、敲回车 模块代码: package com.itheima.qqlogin...javase实现多线程 步骤: 1、在客户端创建一个与服务器端大小一样空白文件 2、设置子线程个数 3、计算每个子线程下载数据块大小和下载起始位置、结束位置 4、创建子线程开始下载数据 5、得到每个子线程都下载完成标记...total + len; int currentPosition = startIndex + total; //能够即时数据写到数据

3K10

基础干货(四):网络编程学习

ok,404 没有找到资源、503、509 服务器端错误 (2)解析服务器返回二进制数据,解析成一个图片 (3)把图片显示在TextView上 示例代码: package com.itheima.htmlview...code = conn.getResponseCode(); if(code == 200){ //(2)解析服务器返回二进制数据...网图片查看器(重点) 1、发送请求:GET 2、接收服务器端返回响应数据 使用代码实现步骤: 1、创建URL,打开一个HTTP连接; 2、设置请求头信息:GET(GET、POST) 3、接收服务器端返回响应数据...,响应码:200 ok,404没有找到资源 ,503服务器端内部错误 4、把接收二进制数据转换成图片 模版代码: 1、创建一个URL对象,打开一个HTTP连接 URL url = new URL...username=123&password=1233 缺点: 1、提交数据长度有限制: 最大长度4kb,windows中提交数据时最大长度为1kb; 2、不安全 优点: 代码简单 代码: import

14.9K10

开发基础教程-使用隐式意图打开系统内置应用,干货

开篇 本文阅读需15分钟,属于开发基础教程。 建议先收藏,然后打开开发工具,按照步骤一起做。 本文由做全栈攻城狮原创首发。 本教程致力于讲解及快速进行开发学习。...除开发教程之外,还有Python、C#、网站建设、SEO等教程。对电脑技术感兴趣朋友直接点击上方“关注”。 本文章要求你有一点基础。...没有基础朋友可以,查看以前我写关于开发文章。 上次课程:开发基础教程-Android多界面应用程序开发 实现功能: 点击按钮实现打开系统内置浏览器,并访问百度功能。 ?...通过这种setClass进行跳转方式叫做显式意图。 当然如果在自己本应用之内,使用显式意图,效率更高。...隐式意图AndroidManifest最简单配置 AndroidManifest配置完毕,就可以使用隐身意图去打开了: ? 使用隐式意图打开新界面 协议、host、数据类型 ?

1.3K20

基础干货(十):多媒体编程学习

每个像素点颜色是一个RGB,使用6个十六进制数值来表示。 文件头信息占用数据大小。 体积比较大。 2、jpg 以良好质量保存图片,用于计算机、电子邮件或网络。...//获得设备分辨率对象 Display display = wm.getDefaultDisplay(); //api13之前使用这个两个方法,13之后置为过期...(SurfaceView) findViewById(R.id.sv); SurfaceHolder holder = sv.getHolder(); //推送缓冲数据...,api 13之前版本上必须执行这行代码,13版本之后,播放器可以自动把 //数据加载到缓冲区 holder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS...,用于播放本地音视频文件 //mediaPlay.prepare(); //使用异步式准备方法,使用子线程等待数据资源准备完成后才开始播放

1.4K10

系统usb调试在哪_手机usb调试

大家好,又见面了,我是你们朋友全栈君。 Android手机USB调试在哪?手机如何打开USB调试模式?...如果我们要将手机连接到电脑上,从而传输文件、下载应用或ROOT等,都需要打开手机USB调试模式。...系统版本有很多,它们打开方法也各不相同,下面给大家介绍各版本手机打开USB调试模式方法。...4、再返回设置菜单界面选择开发者者选项; 5、点击打开右上角开关,即可打开 USB调试模式; 6、打开USB调试模式后,下拉手机通知栏,将手机上连接电脑USB模式设置为“仅充电”模式或“媒体设备...上述便是手机打开USB调试模式方法,需要将手机连接电脑下载应用或干嘛,可以按照小编描述方法来打开USB调试模式。 版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。

3.8K40

】在中使用HTTP协议最佳实践

中使用HTTP协议最佳实践 在开发应用时,网络通信是一个不可或缺方面。HTTP协议是许多应用程序数据交换基础,因此了解如何正确地使用它对于确保应用性能和安全性至关重要。...选择合适HTTP客户端 提供了多种HTTP客户端,包括HttpURLConnection、OkHttp和Retrofit等。每个客户端都有其优势和特点。...安全网络通信 在进行网络通信时,保护数据和信息安全性是非常重要。以下是一些网络通信安全性最佳实践: 减少敏感数据传输:尽量减少传输敏感或个人用户数据。...这样可以更容易地管理不同部分应用程序中网络请求。 结论 在应用开发中,正确使用HTTP协议对于提供良好用户体验和保护用户数据至关重要。...希望这篇文章能够帮助您理解在中使用HTTP协议重要性以及如何实现最佳实践。

5510

常用控件

android:textSize: 设置文本大小。 android:textColor: 设置文本颜色。 android:gravity: 设置文本对齐方式(如居中、左对齐、右对齐等)。...它支持加载和显示各种格式图片资源。 属性 android:src: 设置显示图片资源。 android:scaleType: 设置图片缩放类型(如适应、裁剪、填充等)。...ListView ListView 是一个用于显示滚动列表控件,每个列表项可以是一个自定义视图。 使用步骤 定义布局: 创建一个包含 ListView 布局。...准备数据: 准备一个数据源(如数组或列表)。 创建适配器: 使用适配器将数据绑定到 ListView。 设置适配器: 将适配器设置到 ListView 上。...使用步骤 定义布局: 创建一个包含 RecyclerView 布局。 创建适配器: 实现 RecyclerView.Adapter,定义数据和视图绑定逻辑。

7310

1.下载gradle 你导别人项目是需要下载相同gradle包,下面这个网站有,注意一般是下载对应版本“gradle-x.x-all.zip”格式 https://services.gradle.org.../distributions/ 比如下载2.4版本就要找2.4版本all 2.改变gradle环境变量配置 先在我电脑右键 注意是在系统变量里改 改gradle文件夹存放名字,我都装在一个文件夹下了...这里应该是引用这个目录下debug.keystore文件而没有找到引起 7.模拟器怎么上网 方法一 PC机可以上网,PC机上面的Android模拟器不能上网。...其实只要使模拟器跟自己PC在同一个网段内就行了: 首先,如果没有配置sdk环境变量,那么在CMD命令下进入sdk安装路径platform-tools目录下(D:\Program Files\...获得百度 ip 地址 然后在浏览器中输入 https:// 百度 ip 地址 看看是否能够访问 如果能够访问 那么你就遇到了和我一样问题 请继续看 打开你 sdk 目录中 emulator

44520

开发_数据存储技术_sqlite

一、SQLite SQLite第一个Alpha版本诞生于2000年5月,它是一款轻量级数据库,它设计目标是嵌入式,占用资源非常低,只需要几百K内存就够了。...SQLite已经被多种软件和产品使用 二、SQLite特性 1 2 1、轻量级 3 SQLite和C\S模式数据库软件不同,它是进程内数据库引擎,因此不存在数据客户端和服务器。...(); 59 String[] name = {"Alice"}; 60 //第一个参数是修改数据库名称,第二个参数是删除数据要符合条件,第三个参数是修改数据源...--------------------------------------------------------------------------------------------- 相关知识: 开发..._数据存储技术_外部存储 开发_数据存储技术_内部存储 开发_数据存储技术_SharedPreferences类

80370
领券