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

不可错过的几款GitHub开源项目

特性: 支持自定义UI 支持多/单图片选择和预览,单图裁剪功能 支持gif 支持视频选择功能 提供图片压缩 多图生成gif(checkout feature/gif-encode) 效果图: ?...开发此项目主要是为展示各种开源库的使用方式以及 Android 项目的设计方案,并作为团队项目开发规范的一部分。...采用的开源库包括: RxJava Retrofit2 OKHttp3 ORMLite Dagger2 ButterKnife RetroLambda Stetho 本项目还展示了: MVP+RxJava...RxJava其他操作符来做延时、轮询、转化、筛选等操作 使用okhttp3对网络返回内容做缓存,还有日志、超时重连、头部消息的配置 使用Material Design控件和动画 使用MVP架构整个项目,...+ OkHttp3 做网络请求 OkHttp3 对网络返回内容做缓存, 还有日志、超时重连、头部消息的配置 V层基类的构建, 包括 BaseActivity 和 BaseFragment , 对外提供了相同的接口

1.9K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    高仿京东Android App,集成React-Native热更

    简介 本项目是一个学习类型的项目,主要是为了学习一些Android最新的思路和开发思想,工程按照模块化、组件化的开发思路进行开发,项目整体结构如下图。...,降低了耦合性; 网络使用 retrofit2 + okhttp3方式,进行了高度的封装; leakcanary 内存泄漏检测 基于MVI架构airbnb的Mavericks 本地mock alibaba...,随着应用程序的增长或添加功能或事先没有计划的功能,视图渲染和业务逻辑可能会变得有点混乱,并且这种情况经常发生在Android应用开发过程中。...MVI的架构思想来源于前端,由于Model、View和Intent三部分组成。 Model:与其他MVVM中的Model不同的是,MVI的Model主要指UI状态(State)。...网络okHttp3网络mavericksMVI框架BaseRecyclerViewAdapterHelper万能适配器PhotoView图片预览ARouter组件化路由coil图片加载XPopup弹窗组件

    61340

    WCF服务调用超时错误:套接字连接已中止。这可能是由于处理消息时出错或远程主机超过接收超时或者潜在的网络资源问题导致的。本地套接字超时是“00:05:30”(已解决)

    问题:   线上正式环境调用WCF服务正常,但是每次使用本地测试环境调用WCF服务时长就是出现:套接字连接已中止。这可能是由于处理消息时出错或远程主机超过接收超时或者潜在的网络资源问题导致的。...本地套接字超时是“00:05:30” 这个问题,查阅了网上很多资料各种说法的都有,有的说是什么请求站点不在同一个域下,有的说什么应为datatable中有一个属性没有赋值各种答非所问的问题。...其实从错误信息中就可以看出来其实就是调用超时了。...如果消息超出此限制,则发送方将收到 SOAP 错误。 接收方将删除该消息,并在跟踪日志中创建事件项。 默认值为 65536。 name 一个包含绑定的配置名称的字符串。

    2.5K10

    【Android 应用开发】Android 网络编程 API笔记 - java.net 包相关 接口 api

    DatagramSocketImplFactory 作用 : 定义用于数据包套接字实现的工厂; 接口使用环境 : DatagramSocket 使用该接口的方法 创建 套接字实例; 接口方法解析 : ...SocketImplFactory 作用 : 用于定义套接字实现工厂; 使用环境 : Socket 和 ServerSocket 使用该接口定义的方法 来创建套接字实例; 方法解析 :  SocketImpl...;  -- 套接字本地地址不可更改 : 套接字在创建的时候绑定本地地址, 因此不可更改; -- 套接字默认地址 : INADDR_ANY 表示 多穴主机 (有多个IP地址的主机) 的任何地址; SO_REUSEADDR...: 如果出现超时, 阻塞会继续执行, 但是会引发 InterruptedIOException 异常, Socket 不会关闭; -- 适用情况 : 该设置对所有的套接字 ( SocketImpl,..., 如果传入其它内容 都会启用该选项; -- 异常 : 如果选项匹配错误, 或者 socket 关闭 等错误, 就会报出 SocketException 异常; Object getOption(int

    97130

    Android网络编程(六)OkHttp3用法全解析

    前言 上一篇介绍了OkHttp2.x的用法,这一篇文章我们来对照OkHttp2.x版本来看看,OkHttp3使用起来有那些变化。...:okio:1.7.0' 添加网络权限: android:name="android.permission.INTERNET"/> 2.异步GET请求 惯例,请求百度...在wangshu.txt文件中有一行字“Android网络编程(六)OkHttp3用法全解析”我们运行程序点击发送文件按钮,最终请求网络返回的结果就是我们txt文件中的内容 : ?...) throws IOException { Log.i("wangshu", response.body().string()); } }); } 6.设置超时时间和缓存...和OkHttp2.x有区别的是不能通过OkHttpClient直接设置超时时间和缓存了,而是通过OkHttpClient.Builder来设置,通过builder配置好OkHttpClient后用builder.build

    1.5K20

    『贝壳找房APP』反编译到底有多简单–反编译和调试实践

    点击此处下载贝壳找房Apk 点击此处下载反编译debug包 Apk存在的漏洞 下面进入正题,一文让你知道反编译贝壳APP到底有多简单! 首先下载上方链接的贝壳Apk,接下来进入简单的反编译工作!...反编译步骤 由于目标apk的安全性较低,步骤很简单: 通过apktool d反编译得到smali和AndroidManifest.xml文件 修改xml中application属性android...采用多dex打包,考虑到版本的问题(v1.4.2),这样的包大小已经远超出控制范围了。部分代码采用了kotlin编写。 ?...(api、统计)、okhttp3、okio、greenrobot、fastJson、pl.droidsonroids.gif、retrofit2、rx、tencent.tls、cn.shuzilm.core...插件化:贝壳的插件化采用的是360一样hook和占坑的方式,在im和账户页做了部分工作。 总体来说,贝壳是一个业务快速增长的APP,基于链家的背景,通过业务和产品定位不难带动用户的增长。

    1.7K10

    socket的连接超时 与 读取写入超时

    "default_socket_timeout") [,$flags = STREAM_CLIENT_CONNECT [ $context ]]]]] ) 1.remote_socket 要连接到的套接字的地址...对于Internet域套接字(AF_INET)(如TCP和UDP),remote_socket参数的目标部分应包含主机名或IP地址,后跟冒号和端口号。...对于Unix域套接字,目标部分应指向文件系统上的套接字文件。 注意:默认情况下,流将以阻塞模式打开。您可以使用stream_set_blocking($stream,1)将其切换到非阻塞模式。...2.errno 如果连接失败,将设置为系统级错误号。 3.errstr 如果连接失败,将设置为系统级错误消息。 4.timeout connect()系统调用应该超时之前的秒数。...注意: 要设置通过套接字读取/写入数据的超时,请使用stream_set_timeout(),因为仅在连接套接字时才应用超时。 5.flags 位掩码字段,可以设置为连接标志的任意组合。

    4.9K30

    蓝牙门禁Android客户端

    对等体请使用自己生成的UUID 第三,四个类BluetoothSocket与BluetoothServerSocket 首先看下BluetoothSocket介绍:     蓝牙套接字接口类似tcp套接字...最常见的蓝牙套接字类型是RFCOMM,这是Android API支持的类型。 RFCOMM是面向连接的,通过蓝牙的流传输。 它也称为串行端口配置文件(SPP)。...一旦套接字已连接,无论是连接为客户端还是连接为服务端,通过调用getInputStream()与getOutputStream()来分别检索InputStream对象,这些对象分别自动连接到套接字。...BluetoothSocket是线程安全的,另外,close() 方法将立即终止正在进行的操作和关闭套接字。...下面来介绍下具体连接蓝牙功能的代码实现:  思路:如果将蓝牙连接与数据通信部分放在Activity中,那么假如退出Activity,套接字也会随着activity关闭,而且每打开一次Activity又

    2K100

    Retrofit2 学习总结

    我在学习Android期间就是哪里有请求就放哪里,后来有人告诉我要集中存放。于是后来就建立一个AppURL.java所有地址都存放这里。...link RequestBody}、{@link okhttp3.MultipartBody.Part} 、任意类型; 动手测试:username的RequestBody 换成String是否可以 多文件上传...参数类 注1:{占位符}和PATH尽量只用在URL的path部分,url中的参数使用Query和QueryMap 代替,保证接口定义的简洁 注2:Query、Field和Part这三者都支持数组和实现了...本文部分内容来自于下面部分文章 鸿洋:http://blog.csdn.net/lmj623565791/article/details/51304204#t1 图片来源(经过作者授权拿的图):http...blog.csdn.net/ljd2038/article/details/51046512 http://blog.csdn.net/biezhihua/article/details/49232289 多文件上传参考

    1.3K20

    linux网络编程之socket(十一):套接字IO超时设置方法和用select实现超时

    accept  * fd: 套接字  * addr: 输出参数,返回对方地址  * wait_seconds: 等待超时秒数,如果为0表示正常模式  * 成功(未超时)返回已连接套接字,失败返回-1,超时返回...            return -1;         else if (ret == 1)         {             /* ret返回为1,可能有两种情况,一种是连接建立成功,一种是套接字产生错误...还需要注意的是当select 返回1,可能有两种情况,一种是连接成功,一种是套接字产生错误,由这里可知,这两种情况都会产生可写事件,所以需要使用getsockopt来获取一下。...退出之前还需重新将套接字设置为阻塞。...connect_timeout: Connection refused 很明显是connect_timeout 函数返回了-1,我们也可以推算出connect_timeout 函数中,select返回1,但却是套接字发生错误的情况

    6.2K01
    领券