第一类是 Medium 上热门文章的翻译,其实我也翻译过: 在 Android 上使用协程(一):Getting The Background 在 Android 上使用协程(二):Getting started...在 Android 上使用协程(三) :Real Work 说实话,这三篇文章的确加深了我对协程的理解。...在 Android 中,一般是不建议直接使用 GlobalScope 的。那么,在 Android 中应该如何正确使用协程呢?再细分一点,如何直接在 Activity 中使用呢?...如何配合 ViewModel 、LiveData 、LifeCycle 等使用呢?我会通过简单的示例代码来阐述 Android 上的协程使用,你也可以跟着动手敲一敲。...协程在 Android 上的使用 GlobalScope 在一般的应用场景下,我们都希望可以异步进行耗时任务,比如网络请求,数据处理等等。当我们离开当前页面的时候,也希望可以取消正在进行的异步任务。
解析方式 特点 适用场景 org.json 书写简便,消耗内存 小文档,频繁访问 Gson 按需解析,耗内存少,效率低于Jackson 按需解析 Jackson 大文档完全解析效率最高,必须完全解析文档...大文档,不用按需解析 下面简单说明一下三种解析方式如何使用 公共代码 ---- json文档内容: { "vegetable":["茄子", "番茄", "青菜"], "fruit":[...根据Json文档创建对应的JavaBean类,不需要写全json文档中的属性(Android Studio可以通过插件自动创建) public class EatBean { @SerializedName...就被解析成了一个对象,使用gson解析时JavaBean对象不需要全部的属性都和json文档一一对应,按需编写即可,不需要的属性可以不写。...Jackson 解析 根据json文档创建对应的JavaBean类,可以参考上面,和Gson解析有所区别的是,json文档中所有属性必须写到JavaBean中的 导入Jackson库 在网下下载jackson
个人博客地址 http://dandanlove.com/ Android网络之Retrofit2.0使用和解析 Retrofit2在项目中的使用 Android studio项目添加依赖 javacompile...'com.squareup.retrofit2:retrofit:2.0.1' 项目中使用样例 定义HTTP API使用接口 javapublic interface GitHubService {...Retrofit依赖 如果所示在Retrofit2.0中只支持okhttp,所以另一种方法是在okhttp的拦截器中addheader。...Retrofit2源码解析 Retrofit请求框架实现了高度的解耦,通过解析注解的得到的代理类生成http请求,然后将请求交给OkHttp。...现在Rxjava响应式编程已经广泛应用,在使用Retrofit时也会结合RxJava使编码更加简单、高效。 一张图简单描述一下Retrofit的工作原理: ?
今天说一说Android使用OKHTTP解析JSON数据[通俗易懂],希望能够帮助大家进步!!! 为了代码重用,我们首先封装一个类。....app.AppCompatActivity; import android.util.Log; import android.view.View; import android.widget.Button...public class MainActivity extends AppCompatActivity implements View.OnClickListener{ String url="解析地址...Gson解析得到的json Gson gson = new Gson(); List appList = gson.fromJson(jsonData, new TypeTokenAndroid程序网络请求的阻塞影响主线程,当然,这段代码你可以直接拉过来抄下。 在Java1.8中,貌似加入了Lambda表达式,那么使用表达式可以干嘛呢?
BCC在android系统上也可以运行,但是要对系统进行一定程度的修改,后续可能会写单独的文章进行讲解。对于内核开发者我还比较关注怎么自己来实现监控的功能,下文也将做简单的讲解。 ?...四、eBPF在Android平台的使用 经过上面枯燥的讲解,大家应该对eBPF有了基础的认识,下面我们就来通过android平台上的一个监控性能的小例子来实操下。...Q版本上的节点信息。...可以使用下面的命令调试动态加载 ? 4. 用户空间程序实现 下面我们需要编写用户空间的显示程序,本质上就是在用户态通过系统调用把BPF map给读出来。 ? ?...至此,如何在android平台使用eBPF实现统计系统中每个pid在一段时间内系统调用的次数的功能就介绍完了。
前言 不少同学在适配Android P的时候会遇到not permitted by network security policy问题: //使用HttpUrlConnection时遇到的异常 W/System.err...表示,为保证用户数据和设备的安全,针对下一代 Android 系统(Android P) 的应用程序,将要求默认使用加密连接,这意味着 Android P 将禁止 App 使用所有未加密的连接,因此运行...Android P 系统的安卓设备无论是接收或者发送流量,未来都不能明码传输,需要使用下一代(Transport Layer Security)传输层安全协议,而 Android Nougat 和 Oreo...在Android P系统的设备上,如果应用使用的是非加密的明文流量的http网络请求,则会导致该应用无法进行网络请求,https则不会受影响,同样地,如果应用嵌套了webview,webview也只能使用...network-security-config> 然后在AndroidManifest.xml
【前言】一般来讲,Android使用的数据库都是自带的SQLite数据库。Web重量级的MySQL、Orcacle、NOSQL等都不适用于Android项目的开发。...但是我发现了一个Web上最近几年比较火的一个数据库 ---- MongoDB。查看它的官网发现,它还可以用于Android开发,而且官方文档也给出了一些API说明。...于是我决定写下这篇博客分享一下MongoDB在Android上怎么使用。...【说明】:MongoDB也可以在iOS上面使用,我是做安卓开发的,本文只讲解MongoDB在Android上面的使用,iOS的使用情况请上MongoDB官网自行查阅。...【解决方案】:如果要将Android应用程序部署到AVD模拟器(即:AS自带模拟器),请务必为AVD选择x86_64或者arm的映像。 ---- 参考:BSON的介绍及BSON与JSON的区别
如果以上还不足以说服您使用 ProGuard,其实移除无用代码和混淆所有名称还有其他更多的优化效果: 在一些版本的 Android 设备上,DEX 代码会在安装或者运行时被编译成机器码。...当一些类和方法会被动态访问到时(如使用反射),在某些情况下,ProGuard 在构建调用图时不能正确的决定他们的「生死」,导致这些代码被错误的移除掉。...这些警告的一个原因就是,您的构建路径中没有加入需要依赖的 JARs,如使用了 provided (仅编译时)依赖。而有时候,在 Android 上这些代码的依赖在运行时并不会被真正的调用。...这些映射文件不能被其他的构建所使用,而只会在与它们一起生成的 APK 配合使用时才能确保正确。有了这些映射关系,您才能有效地 debug 用户设备的发生的崩溃。...tools 目录下(SDK/tools/proguard/proguard-android.txt),但在新版的 SDK Tools 和 Android Gradle 插件版本2.2.0+上,可以在构建时从
1.Mac系统默认使用dash作为终端,可以使用命令修改默认使用zsh: chsh -s /bin/zsh 2.安装Oh my zsh sh -c "$(wget https://raw.githubusercontent.com...-> color,选择右下角下拉框的import,选择我们下载好的solarized目录里面的iterm2-colors-solarized下面的两个文件,然后关闭终端,重新进入刚才的路径,这时候我们在点击右下角下拉框...配置sz和rz命令 在我们操作的服务器上执行如下命令进行安装 yum install lrzsz ?...安装好之后,我们就可以在服务器上执行sz和rz命令了,sz是将服务器的文件下载到本地电脑上,rz是将本地电脑的文件上传到服务器上。 ? 此时,你会发现,永远停留在下面这个界面。...Parameters: /usr/local/bin/iterm2-recv-zmodem.sh Instant: checked 此时关闭终端,重新打开,登录到服务器,使用
Json 是什么? 一开始在Android,对我来说它是一个有规则个字符串。 当我深入JavaScript后,感觉它越来越有意思,当成一个对象来用,属性、方法都能往里塞。...*/ private boolean isMan; /** * 主要技能 */ private List major; 2.使用JSONObject...return gson.fromJson(Json, Person.class); } Json解析.png 关于日期 private Date birthday;//将日期改为Date类型 Json...中使用字符串XXXX-XX-XX"形式,解析时可自动转换为Date格式 日期.png 三、Json与网络 Json最广泛的用途是在网络传输数据,具有体积小,JavaScript原生支持的主角光环 拿阿里的号码归属地查询的网站来说...tel=18715078974 返回内容就包括json,我们可以请求网络,获取数据,解析出来,在本地显示。
Google在今年的I/O上发布了一个移植跨界应用 名为App Runtime for Chrome(Beta)这个东西可以让Android系统的App运行于ChromeOS下...目前此功能还在测试 只有几个官方的Android App公开放出 于是vladikoff大神把这部分国内提取出来 能让任何系统下的Chrome/Chromium运行Android App...linux下面无法使用23333 于是@farseerfc 告诉我了一个更好的工具 SimpleLauncher(reddit原帖地址) 下载这个压缩包 ...上使用Chrome运行Android应用 下载方法见 http://www.linuxidc.com/Linux/2013-07/87684.htm --------------...Windows 上使用 Chrome 运行 Android 应用 见 http://www.linuxidc.com/Linux/2014-09/107199.htm
二:前言 在开发中我们要面对很复杂的操作,那么今天的网络请求与数据解析也是对于学习Android开发者来说,需要解决的难题,我只是讲解一下知识内容,用于理解这方面的知识点。...有了GsonFormat的功能,我们就不用辛苦生成Json数据里的属性类。 四:使用json解析 JSON数据一般由服务器端提供接口,我们根据接口地址解析数据,然后把数据显示在APP上。...对于HTTP协议是这样的,http为超文本传送协议,是web的基础,http是建立在tcp上的一种。http在客户端发送请求都要服务器回送响应,请求结束后,会主动释放。这个过程连接到关闭为一次连接。...五:网络权限 在我们使用网络请求的时候,需要的是设置权限,这一点千万别忘记了。...gson = new Gson(); //使用Gson,快速解析,添加jar包 //1.解析普通的json对象 //2.解析json数组 //参数1:满足json数组形式的字符串 //参数2:Type
已废弃 目前来说Android开发所支持的Java版本是Java 7,在Android N发布以后可以通过Jack(Java Android Compile Kit)编译链可以使用Java 8。...但目标来说使用Java 8有以下限制: mini sdk >=24 以及 android studio >= 2.1 不支持 data binding 不支持Instant Run 启用Jack 在module...级别的buidl.gradle添加以下语句设置Jack以Java 8: android { defaultConfig { jackOptions { enabled true
在Android上使用TarsosDSP探测声音频率 TarsosDSP是一个用于音频处理的Java库,这个库包含多个声音频率探测算法,同样包含Goertzel DTMF算法、时间拉伸算法、滤波器等等。...这篇文章通过一个简单的例子在Android上使用TarsosDSP来探测声音的频率。 首先新建一个Android项目,并且在布局上安置一个TextView来显示音高信息。...在开始项目前,需要先申请录音权限。...processPitch(pitchInHz); } }); } }; 在这个例子中,使用
借助出色的Termux终端仿真器应用程序,您可以在Android上运行SSH服务器。 以前,我使用SSHDroid来实现此目的,但是使用Termux更好,因为您可以使用包管理器工作。...sshd 您的ssh服务正在端口8022上运行,以下是测试命令 ssh localhost -p 8022 添加您的公钥 您无法在Termux中进行密码身份验证,因此需要将OpenSSH公钥放入~/...如果还没有OpenSSH密钥对,则可以使用以下命令生成一个在你需要使用ssh登录的机器上: ssh-keygen 您可以输入或不输入密码,如果没有另外指定,您的密钥对将保存在~/.ssh/id_rsa...然后可以使用以下命令将其添加到~/.ssh/authorized_key中,注意这个命令在这里只是简单说明,并不是你就可以简单重定向到你Android手机,但是实际如果你要将你的id_rsa.pub放到...OpenSSH 如果您使用的是OpenSSH(在Linux或Cygwin上),则可以直接使用它: ssh $IP -p 8022 希望将来Termux允许将sshd注册为适当的服务,它将在系统启动时自动启动
前言 在Andrroid开发中,网络请求十分常用 而在Android网络请求库中,Retrofit是当下最热的一个网络请求库 今天,我将献上一份非常详细Retrofit v2.0的使用教程,希望你们会喜欢...Android:网络请求库Retrofit使用教程 Carson带你学Android:网络请求库Retrofit源码分析 Carson带你学Android:图片加载库Glide使用教程 Carson...原因:网络请求的工作本质上是 OkHttp 完成,而 Retrofit 仅负责 网络请求接口的封装 App应用程序通过 Retrofit 请求网络,实际上是使用 Retrofit 接口层封装请求参数、...Header、Url 等信息,之后由 OkHttp 完成后续的请求操作 在服务端返回数据之后,OkHttp 将原始的结果交给 Retrofit,Retrofit根据用户的需求对结果进行解析 2....关于数据解析器(Converter) Retrofit支持多种数据解析方式 使用时需要在Gradle添加依赖 数据解析器 Gradle依赖 Gson com.squareup.retrofit2:converter-gson
关于REST的介绍可以参考维基百科 retrofit模型如下:(来自如何使用Retrofit写一个Android的REST客户端的小教程) retrofit模型...RestAdapter类 : 这是一个REST客户端(RestClient)类,retrofit中默认用的是Gson来解析JSON数据,你也可以设置自己的JSON解析器。...二、使用 添加依赖(gradle)或导jar包 添加依赖 在modul的build文件下的dependencies中添加 compile 'com.squareup.retrofit2:retrofit...格式,在此我使用的是Gson对返回数据解析 添加权限 由于是网络请求,需要在manifest中添加网络请求的权限 android:name="android.permission.INTERNET..."/> 创建实体类 这是使用Gson解析,需要创建一个POJO(Java对象)。
Retrofit的使用 通常我们是Retrofit是和Rxjava配合使用,这里我们不做用法上的过多研究,主要看原理,所以下面的代码都是Retrofit的自身API,没有用Rxjava。...在Retrofit中,内置了两种平台,一种是Android,一种是Java8。不同的平台,处理的方式不同。...的核心,使用动态代理来处理我们在接口中定义的方法。...执行请求的客户端,这里是OkHttpClient,在创建的时候.client传入 converterFactories json解析处理工厂数组,这里是GsonConverterFactory。...,使用Handler在主线程中处理回调。
在官方文档中有这样一句话--A type-safe HTTP client for Android and Java(一个类型安全的http client库),具体的话就去问百度吧。...使用访问百度,返回百度页面的源码,这仅仅是为了证明该库怎么使用而已,我们先说标红内容,下一篇就是如何快速解析JSON和XML。...主要内容: Retrofit加载 如何使用 GET和POST JSON和XML解析 1:首先我们要加载Retrofit包 我的studio是2.0,我在官方文档上看到现在是Retrofit2.3.0...,编辑器要求是studio2.3、java7及以上,我在添加依赖的时候找不到该包,所以我只能手动 compile 'com.squareup.retrofit2:retrofit:2.0.1' ? ...先使用GET,/为根目录,在MainActivity中写http://www.baidu.com,总的网址就是http://www.baidu.com/,在后面加了一个/. public interface
前言 在Andrroid开发中,网络请求十分常用 而在Android网络请求库中,Retrofit是当下最热的一个网络请求库 今天,我将献上一份非常详细Retrofit v2.0的使用教程,希望你们会喜欢...Android:网络请求库Retrofit使用教程 Carson带你学Android:网络请求库Retrofit源码分析 Carson带你学Android:图片加载库Glide使用教程 Carson...原因:网络请求的工作本质上是 OkHttp 完成,而 Retrofit 仅负责 网络请求接口的封装 App应用程序通过 Retrofit 请求网络,实际上是使用 Retrofit 接口层封装请求参数、...Header、Url 等信息,之后由 OkHttp 完成后续的请求操作 在服务端返回数据之后,OkHttp 将原始的结果交给 Retrofit,Retrofit根据用户的需求对结果进行解析 2....关于数据解析器(Converter) Retrofit支持多种数据解析方式 使用时需要在Gradle添加依赖 数据解析器 Gradle依赖 Gson com.squareup.retrofit2
领取专属 10元无门槛券
手把手带您无忧上云