Skip to content
This repository has been archived by the owner on May 28, 2024. It is now read-only.
/ QBox Public archive

🐈 RxJava+Retrofit+Okhttp+Glide + A life tool App, contains modules: news; jokes; constellation fortune; LED; weather; calendar; two-dimensional code, and more ... 小秋魔盒是一个生活工具 App,主要功能有:新闻资讯;微信精选美文;笑话趣图;星座运势;LED字幕;天气;日历;二维码;手电筒;老黄历。在开发中尽可能多的用了目前比较流行的框架和库。

Notifications You must be signed in to change notification settings

OCNYang/QBox

Repository files navigation

QBox

小秋魔盒

tips:前段时间远程数据库造成的问题已修复,现已能正常使用

GitHub issues  GitHub forks  GitHub stars

小秋魔盒(QBox)是一个生活工具 Android App,由 OCN.Yang 开发,第一个版本上线时间:2017.04.11

A life tool App: simple and beautiful, pure, love.(Welcome to Star and Fork)  

Release version
Current version

下载地址 | APK Download:

地址一:https://d.firim.info/qbox
地址二:https://raw.githubusercontent.com/OCNYang/QBox/master/apk/QBox.apk

应用预览 | UI

图片依次是(多动图,加载较慢,图片不显示刷新页面):
1.新闻模块(如果你下载的 apk 没有显示新闻模块,开启方式:设置页长按头部直至出现提醒 > 设置页长按底部直至出现提醒 > 退出重启应用)
2.文章模块 3.日历模块
4.天气模块 5.颜色画板 6.盒子布局
7.魔力数字排序列表 8.下拉果冻弹跳效果 9.引导页
10.手势图片 11.能力图表格 12.视差图片

新闻资讯转场动画 日历模块天气模块 颜色画板 盒子布局 拖曳列表 下拉果冻弹跳效果 引导页 手势效果图片 能力表格 视差图片 拖曳 搜索框

Wiki (集成说明)

Document | 说明文档 (也可直接查看下面)  

本应用集成的各开源库或控件的说明

Logger 日志打印

Github地址:https://github.com/orhanobut/logger

粗略用法:

引入:

compile 'com.orhanobut:logger:1.15'

初始化:

Logger.init();//在application中

用法方式:

Logger.d("hello");  
Logger.e("hello");  
Logger.w("hello");  
Logger.v("hello");  
Logger.wtf("hello");  
Logger.json(JSON_CONTENT);  
Logger.xml(XML_CONTENT);  
Logger.log(DEBUG, "tag", "message", throwable);

参数设置:

Logger
.init(YOUR_TAG)                 // default PRETTYLOGGER or use just init()  
.methodCount(3)                 // default 2  
.hideThreadInfo()               // default shown  
.logLevel(LogLevel.NONE)        // default LogLevel.FULL  
.methodOffset(2)                // default 0  
.logAdapter(new AndroidLogAdapter()); //default AndroidLogAdapter  

GsonFormat & Gson json 数据解析

GsonFormat Github地址:https://github.com/zzz40500/GsonFormat
Gson Github地址:https://github.com/google/gson

引入:

compile 'com.google.code.gson:gson:2.7'

Gson 用法教程:

地址:https://ocnyang.com/tags/Gson/


butterknife 依赖注入框架

Github地址:https://github.com/JakeWharton/butterknife

引入:

compile 'com.jakewharton:butterknife:8.4.0'
annotationProcessor 'com.jakewharton:butterknife-compiler:8.4.0'

leakcanary 内存泄漏检测工具

Github地址:https://github.com/square/leakcanary

引入:

debugCompile 'com.squareup.leakcanary:leakcanary-android:1.5'  
releaseCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.5'  
testCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.5'  

Glide 图片请求库

Github地址:https://github.com/bumptech/glide

引入:

compile 'com.github.bumptech.glide:glide:3.7.0'
compile 'com.android.support:support-v4:19.1.0' //v4包

Glide 用法教程:

地址:https://ocnyang.com/tags/Glide/


circleimageview 圆形图片库

Github地址:https://github.com/hdodenhof/CircleImageView

引入:

compile 'de.hdodenhof:circleimageview:2.1.0'

Rxjava + Retrofit + okhttp 网络请求框架

三个库的地址请自行查找,这里提供一个介绍用法的 Demo 地址
Github地址:https://github.com/rengwuxian/RxJavaSamples

(基本的使用,不做三者的封装(因为目前还找不到好的封装框架))

引入:

compile 'com.squareup.okhttp3:okhttp:3.4.1'
compile 'com.squareup.retrofit2:retrofit:2.1.0'
compile 'com.squareup.retrofit2:converter-gson:2.1.0'
compile 'com.squareup.retrofit2:adapter-rxjava:2.1.0'
compile 'io.reactivex:rxjava:1.2.1'
compile 'io.reactivex:rxandroid:1.2.1'
compile 'com.jakewharton.rxbinding:rxbinding:0.4.0'

Okhttp 教程:
地址:https://ocnyang.com/tags/OkHttp/
Retrofit2 教程:
地址:https://ocnyang.com/tags/Retrofit2/


SlidingTutorial-Android 引导页库

Github地址:https://github.com/Cleveroad/slidingtutorial-android

引入:

 compile 'com.cleveroad:slidingtutorial:1.0.5'

nineoldandrolid 开源动画库

Github地址:https://github.com/JakeWharton/NineOldAndroids

引入:

compile 'com.nineoldandroids:library:2.4.0'

percent 百分比布局

说明:非本项目使用,貌似引入的某个开源库依赖此库

Github地址:https://github.com/JulienGenoud/android-percent-support-lib-sample

引入:

compile 'com.android.support:percent:25.3.0'

ReactiveNetwork 手机网络连接状态动态监控

Github地址:https://github.com/pwittchen/ReactiveNetwork

引入:

compile 'com.github.pwittchen:reactivenetwork-rx2:0.9.0'

设想:
网络的检测逻辑的代码放在了BaseActivity中,
网络变化时,需要自动显示网络错误的布局主要继承这个Base类就行了,
同时这个类开放的有网络变化时的回调接口。

自动显示网络错误的布局的几种设想:
第一种:当网络无连接时可以显示一个大的网络错误布局, 或者跳转到一个网络错误布局,当网络连接上的时候再自动跳转回来
(用户也可以通过点击返回,在无网络的情况下的页面)。
第二种:当网络无连接、网络请求数据错误时都显示一个小警示布局提醒网络错误。
第三种:上面两种结合在一起,同时在网络请求数据错误的时候,就加载一定数量的网络错误数据集合。


picasso 图片请求库

Github地址:https://github.com/square/picasso

引入:

compile 'com.squareup.picasso:picasso:2.3.2'

AndroidImageSlider 轮播图片控件

貌似只引入了库,并没有真正使用

Github地址:https://github.com/daimajia/AndroidImageSlider

引入:

compile "com.android.support:support-v4:+"
compile 'com.squareup.picasso:picasso:2.3.2'
compile 'com.nineoldandroids:library:2.4.0'
compile 'com.daimajia.slider:library:1.1.5@aar'

才发现,好几个库都是它在依赖呀,由于没有用到,下个版本可能会删除这个引入


BaseRecyclerViewAdapterHelper RecycleView 拓展库

Github 地址:https://github.com/CymChad/BaseRecyclerViewAdapterHelper

引入:

compile 'com.github.CymChad:BaseRecyclerViewAdapterHelper:VERSION_CODE'

中文 Wiki:
地址:https://github.com/CymChad/BaseRecyclerViewAdapterHelper/wiki/%E9%A6%96%E9%A1%B5


greenDAO 数据库

Github 地址:https://github.com/greenrobot/greenDAO

引入:

较为繁琐,详细查看 Github 地址

eventbus 事件发布/订阅框架

Github 地址:https://github.com/greenrobot/EventBus

引入:

compile 'org.greenrobot:eventbus:3.0.0'

用法简述::

  • 1.Define events:

      public static class MessageEvent { /* Additional fields if needed */ }  
    
  • 2.Prepare subscribers: Declare and annotate your subscribing method, optionally specify a thread mode:

      @Subscribe(threadMode = ThreadMode.MAIN)  
      public void onMessageEvent(MessageEvent event) {/* Do something */};
    

Register and unregister your subscriber. For example on Android, activities and fragments should usually register according to their life cycle:

 @Override
 public void onStart() {
     super.onStart();
     EventBus.getDefault().register(this);
 }

 @Override
 public void onStop() {
     super.onStop();
     EventBus.getDefault().unregister(this);
 }
  • 3.Post events:

      EventBus.getDefault().post(new MessageEvent());
    

RippleEffect 控件点击的涟漪效果

Github 地址:https://github.com/traex/RippleEffect

引入:

compile 'com.github.traex.rippleeffect:library:1.3'

takephoto 拍照上传库

Github 地址:https://github.com/crazycodeboy/TakePhoto

引入:

 compile 'com.jph.takephoto:takephoto_library:4.0.3'

colorpicker 颜色画板选择库

Github 地址:https://github.com/QuadFlask/colorpicker

引入:

compile 'com.github.QuadFlask:colorpicker:0.0.13'

android-autofittextview 自适应大小文本控件

Github 地址:https://github.com/grantland/android-autofittextview

引入:

compile 'me.grantland:autofittextview:0.2.+'

HTextView 动态文本控件

Github 地址:https://github.com/hanks-zyh/HTextView

引入:

 compile 'hanks.xyz:htextview-library:0.1.5'

BGAQRCode-Android 二维码扫描项目

对比了一些通过Zxing封装的二维码识别的项目,独独比较喜欢这个。

Github 地址:https://github.com/bingoogolapple/BGAQRCode-Android

引入:

compile 'com.google.zxing:core:3.2.1'
compile 'cn.bingoogolapple:bga-qrcodecore:latestVersion@aar'
compile 'cn.bingoogolapple:bga-zxing:latestVersion@aar'

MPAndroidChart 图表库

Github 地址:https://github.com/PhilJay/MPAndroidChart

引入:

//在 Android 开发中使用过图表的,应该都会知道这个库吧。
compile 'com.github.PhilJay:MPAndroidChart:v3.0.2'

material-calendarview 材料设计日历控件

Github 地址:https://github.com/prolificinteractive/material-calendarview

引入:

compile 'com.prolificinteractive:material-calendarview:1.4.3'

flexbox-layout 官方的盒子布局控件

Github 地址:https://github.com/google/flexbox-layout

引入:

compile 'com.google.android:flexbox:0.3.0-alpha3'

KenBurnsView 视差图片控件

Github 地址:https://github.com/flavioarfaria/KenBurnsView

引入:

compile 'com.flaviofaria:kenburnsview:1.0.7'

materialsearchview 材料设计搜索框

Github 地址:https://github.com/MiguelCatalan/MaterialSearchView

引入:

compile 'com.miguelcatalan:materialsearchview:1.4.0'