码迷,mamicode.com
首页 > 移动开发 > 详细

Android 开源项目android-open-project工具库解析之(二) 高版本向低版本兼容,多媒体相关,事件总线(订阅者模式),传感器,安全,插件化,文件

时间:2015-07-06 18:05:07      阅读:316      评论:0      收藏:0      [点我收藏+]

标签:高版本向低版本兼容   多媒体相关   事件总线订阅者模式   传感器和安全技术   插件化和文件操作   

六、Android 高版本向低版本兼容

  1. ActionBarSherlock
    为Android所有版本提供统一的ActionBar,解决4.0以下ActionBar的适配问题
    项目地址:https://github.com/JakeWharton/ActionBarSherlock
    Demo地址:https://play.google.com/store/apps/details?id=com.actionbarsherlock.sample.demos
    APP示例:太多了。。现在连google都在用

  2. Nine Old Androids
    将Android 3.0(Honeycomb)所有动画API(ObjectAnimator ValueAnimator等)兼容到Android1.0
    项目地址:https://github.com/JakeWharton/NineOldAndroids
    Demo地址:https://play.google.com/store/apps/details?id=com.jakewharton.nineoldandroids.sample
    文档介绍:http://nineoldandroids.com/

  3. HoloEverywhere
    将Android 3.0的Holo主题兼容到Android2.1++
    项目地址:https://github.com/Prototik/HoloEverywhere
    Demo地址:https://raw.github.com/Prototik/HoloEverywhere/repo/org/holoeverywhere/demo/2.1.0/demo-2.1.0.apk
    文档介绍:http://android-developers.blogspot.com/2012/01/holo-everywhere.html

  4. SherlockNavigationDrawer
    将Android NavigationDrawer和ActionbarSherlock结合,解决4.0以下NavigationDrawer的适配问题
    项目地址:https://github.com/tobykurien/SherlockNavigationDrawer
    文档介绍:http://developer.android.com/training/implementing-navigation/nav-drawer.html

  5. Notifications4EveryWhere
    将Android 4.1的Notification兼容到Android2.2++
    项目地址:https://github.com/youxiachai/Notifications4EveryWhere

  6. Android Switch Widget Backport
    将Android Switch和SwitchPreference的兼容到Android2.1++
    项目地址:https://github.com/BoD/android-switch-backport
    Demo地址:https://play.google.com/store/apps/details?id=org.jraf.android.backport.switchwidget.sample
    文档介绍:https://github.com/BoD/android-switch-backport#using-the-switch

  7. android-datepicker
    将Android 4.0的datepicker兼容到Android2.2++
    项目地址:https://github.com/SimonVT/android-datepicker

  8. GlowPadBackport
    Android 4.2的GlowPadView向后适配到API4以上
    项目地址:https://github.com/frakbot/GlowPadBackport

  9. Transitions Everywhere
    Android 4.4 的 Transitions API 兼容到 Android 2.2 以上
    项目地址:https://github.com/andkulikov/transitions-everywhere
    技术分享

七、多媒体相关

  1. cocos2d-x
    跨平台的2d游戏框架,支持Android、IOS、Linux、Windows等众多平台
    项目地址:https://github.com/cocos2d/cocos2d-x
    文档介绍:http://www.cocos2d-x.org/wiki
    官网网址:http://www.cocos2d-x.org/

  2. Vitamio
    是一款Android与iOS平台上的全能多媒体开发框架
    项目地址:https://github.com/yixia/VitamioBundle
    网站介绍:http://www.vitamio.org/docs/
    特点:(1) 全面支持硬件解码与GPU渲染
    (2) 能够流畅播放720P甚至1080P高清MKV,FLV,MP4,MOV,TS,RMVB等常见格式的视频
    (3) 在Android与iOS上跨平台支持 MMS, RTSP, RTMP, HLS(m3u8)等常见的多种视频流媒体协议,包括点播与直播。

  3. PhotoProcessing
    利用ndk处理图片库,支持Instafix、Ansel、Testino、XPro、Retro、BW、Sepia、Cyano、Georgia、Sahara、HDR、Rotate(旋转)、Flip(翻转)等各种特效
    项目地址:https://github.com/lightbox/PhotoProcessing
    Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/photo-processing.apk?raw=true

  4. Android StackBlur
    图片模糊效果工具类
    项目地址:https://github.com/kikoso/android-stackblur
    Demo地址:https://github.com/kikoso/android-stackblur/blob/master/StackBlurDemo/bin/StackBlurDemo.apk?raw=true
    文档介绍:https://github.com/kikoso/android-stackblur#usage

  5. Bitmap Smart Clipping using OpenCV
    图片智能裁剪保留重要部分显示
    项目地址:https://github.com/beartung/tclip-android
    利用淘宝的 http://code.taobao.org/p/tclip/ 库完成
    一淘玩客正在使用的图片裁剪,自动识别图片中的重要区域,并且在图片裁剪时保留重要区域
    特点:(1). 能进行人脸识别。图片中有人脸,将自动视为人脸区域为重要区域,将不会被裁剪掉
    (2).自动其它重要区域。如果图片中未识别出人脸,则会根据特征分布计算出重区域

  6. Cropper
    图片局部剪切工具,可触摸控制选择区域或旋转
    项目地址:https://github.com/edmodo/cropper
    效果图:技术分享
    文档介绍:https://github.com/edmodo/cropper/wiki

  7. android-crop
    图片裁剪Activity
    项目地址:https://github.com/jdamcd/android-crop
    效果图:技术分享

  8. TileView
    可分块显示大图,支持2D拖动、双击、双指放大、双指捏合
    项目地址:https://github.com/moagrius/TileView
    Demo地址:http://moagrius.github.io/TileView/TileViewDemo.apk

  9. BlurEffectForAndroidDesign
    图片模糊效果
    项目地址:https://github.com/PomepuyN/BlurEffectForAndroidDesign

  10. android-eye
    PC端网页查看同一局域网内的手机摄像头内容,可以用来监控哦
    项目地址:https://github.com/Teaonly/android-eye
    Demo地址:https://play.google.com/store/apps/details?id=teaonly.droideye

  11. libpng for Android
    PNG图片的jni库,支持几乎png的所有特性
    项目地址:https://github.com/julienr/libpng-android
    文档介绍:http://www.libpng.org/pub/png/libpng.html

  12. android-gpuimage
    基于GPU的图片滤镜
    项目地址:https://github.com/CyberAgent/android-gpuimage

  13. AndroidFaceCropper
    图片脸部自动识别,将识别后的局部图片返回
    项目地址:https://github.com/lafosca/AndroidFaceCropper

  14. Android Video Crop
    利用TextureView播放和剪切视频,类似ImageView.setScaleType
    项目地址:https://github.com/dmytrodanylyk/android-video-crop
    Demo地址:https://github.com/lafosca/AndroidFaceCropper/releases/download/1.0/FaceCropper-sample-debug-unaligned.apk

  15. svg-android
    Android Svg矢量图形支持
    项目地址:https://github.com/japgolly/svg-android https://github.com/japgolly/svg-android

  16. Android Visualizer
    从Android MediaPlayer获得音频,然后像iTunes及WinAmp一样展示音轨
    项目地址:https://github.com/felixpalmer/android-visualizer

  17. ExoPlayer
    包括仪表板和SmoothStreaming自适应回放,缓存持久化和自定义渲染器,方便自定义和扩展,并且可以通过应用商店更新
    项目地址:https://github.com/google/ExoPlayer

  18. DanmakuFlameMaster
    android上开源弹幕解析绘制引擎项目
    项目地址:https://github.com/ctiao/DanmakuFlameMaster
    技术分享

八、事件总线(订阅者模式)

通过发布/订阅事件解耦事件发送和接受,从而简化应用程序组件(Activities, Fragments及后台线程)之间的通信

  1. EventBus
    greenrobot的开源项目
    项目地址:https://github.com/greenrobot/EventBus
    文档介绍:https://github.com/greenrobot/EventBus#general-usage-and-api
    特点:(1) 支持在不同类型的线程中处理订阅,包括发布所在线程,UI线程、单一后台线程、异步线程
    (2) 支持事件优先级定义,支持优先级高的订阅者取消事件继续传递,支持粘性事件,是不是跟系统的有序广播、粘性广播很像啊
    (3) 不是基于annotations
    (4) 性能更优
    (5) 体积小
    (6) 支持单例创建或创建多个对象
    (7) 支持根据事件类型订阅

  2. Otto
    Square的开源项目,基于Guava的Android优化
    项目地址:https://github.com/square/otto
    文档介绍:http://square.github.io/otto/
    EventBus与Otto的功能及性能对比文档
    EventBus与Otto性能对比Demo Apk
    技术分享

九、传感器

  1. Great Android Sensing Toolkit
    Android感应器工具包,包含示例及使用过程中可能需要的算法
    项目地址:https://github.com/gast-lib/gast-lib
    Demo地址:https://play.google.com/store/apps/details?id=root.gast.playground
    文档介绍:https://github.com/gast-lib/gast-lib#documentation

  2. SensorManager
    Android传感器管理
    项目地址:https://github.com/nlathia/SensorManager
    文档介绍:https://docs.google.com/document/d/1TqThJULb-4e6TGb1gdkAaPCfyuXStjJpbnt7a0OZ9OE/edit

  3. GPSLogger
    记录GPS信息
    项目地址:https://github.com/mendhak/gpslogger
    Demo地址:https://play.google.com/store/apps/details?id=com.mendhak.gpslogger
    文档介绍:http://code.mendhak.com/gpslogger/

  4. Pedometer
    计步器,使用硬件计步感应器
    项目地址:https://github.com/j4velin/Pedometer

  5. leapcast
    ChromeCast模拟器的App
    项目地址:https://github.com/dz0ny/leapcast

  6. Arduino-Communicator
    与Arduino通信的App
    项目地址:https://github.com/jeppsson/Arduino-Communicator

  7. android-pedometer
    Android计步器
    项目地址:https://github.com/bagilevi/android-pedometer
    Demo地址:http://pedometer.googlecode.com/files/Pedometer-1.4.apk

  8. OwnTracks for Android
    自己的轨迹记录
    项目地址:https://github.com/owntracks/android

  9. Shake Detector library for Android
    Android手机震动摇晃检测库,提供供UI线程调用的回调接口
    项目地址:https://github.com/tbouron/ShakeDetector
    Demo地址:https://play.google.com/store/apps/details?id=com.github.tbouron.shakedetector.example

  10. Android heart rate monitor
    Android心跳检测
    项目地址:https://github.com/phishman3579/android-heart-rate-monitor

  11. Bluetooth LE Library for Android
    蓝牙源信息,包括宝库Mac、更新时间、RSSI、UUID、信号源距离、影响范围等信息
    项目地址:https://github.com/alt236/Bluetooth-LE-Library---Android
    Demo地址:https://play.google.com/store/apps/details?id=uk.co.alt236.btlescan

  12. farebot
    通过NFC 从公交卡中读取数据的一个应用
    项目地址:https://github.com/codebutler/farebot
    技术分享

十、安全

  1. SQLCipher
    Sqlite加密工具
    项目地址:https://github.com/sqlcipher/sqlcipher
    文档介绍:http://sqlcipher.net/sqlcipher-for-android/

  2. Conceal
    快速高效的进行文件加密解密
    项目地址:https://github.com/facebook/conceal
    文档介绍:https://github.com/facebook/conceal#usage

  3. Android-PasscodeLock
    应用锁,每次启动或从任何Activity启动应用都需要输入四位数字的密码方可进入
    项目地址:https://github.com/wordpress-mobile/Android-PasscodeLock
    Demo地址:https://play.google.com/store/apps/details?id=org.wordpress.android
    APP示例:Wordpress Android,支付宝,挖财

  4. GlowPadBackport
    将Android4.2的锁屏界面解锁扩展到Android1.6及1.6+
    项目地址:https://github.com/rock3r/GlowPadBackport
    Demo地址:https://play.google.com/store/apps/details?id=net.sebastianopoggi.samples.ui.GlowPadSample
    效果图:技术分享

  5. GlowPadView
    Android 4锁屏界面解锁
    项目地址:https://github.com/nadavfima/GlowPadView
    效果图:https://raw.github.com/nadavfima/GlowPadView/master/example.png

  6. android-lockpattern
    Android的图案密码解锁
    项目地址:https://code.google.com/p/android-lockpattern/
    Demo地址:https://play.google.com/store/apps/details?id=group.pals.android.lib.ui.lockpattern.demo
    文档介绍:https://code.google.com/p/android-lockpattern/wiki/QuickUse

  7. Android-InsecureBank
    关于 Android 不安全性的示例
    项目地址:https://github.com/dineshshetty/Android-InsecureBankv2
    技术分享

十一、插件化

更多见:Android 插件化作用、概念以及不错的资料(包括开源项目)和解决方案

  1. dynamic-load-apk
    Android 动态加载Apk,热部署,利用 ClassLoader 以及 Activity 代理的方式解决
    项目地址:https://github.com/singwhatiwanna/dynamic-load-apk
    文档介绍:http://blog.csdn.net/singwhatiwanna/article/details/22597587

  2. Android Dynamic Loader
    点评的实现方式,和上面不同的是:他不是用代理 Activity 的方式实现而是用 Fragment 以及 Schema 的方式实现
    项目地址:https://github.com/mmin18/AndroidDynamicLoader
    Demo地址:https://github.com/mmin18/AndroidDynamicLoader/raw/master/host.apk

  3. xCombine
    Android App插件式插件开发,插件必须先安装,更推荐看上面两个开源项目
    项目地址:https://github.com/wyouflf/xCombine
    文档介绍:http://my.oschina.net/u/1171837/blog/155377

  4. Android Plugin Framework
    Android插件式开发,开放的源码目前不完整
    项目地址:https://github.com/umeng/apf

  5. multidex
    安装多 dex 的 classloader
    项目地址:https://github.com/casidiablo/multidex

  6. ANR-WatchDog
    Android ANR 监听,通过监听自己的 UI Thread 是否被执行确定是否发生了 ANR,并可以设置相关事件
    项目地址:https://github.com/SalomonBrys/ANR-WatchDog
    技术分享

十二、文件

对不同文档类型的处理,包括PDF、Word、EPub、Html、Zip等

  1. purePDF
    允许从任何运行的SWF文件读取和创建PDF文档
    项目地址:https://github.com/sephiroth74/purePDF

  2. android-pdfview
    快速解析pdf的view,默认支持手势缩放和相关动画
    项目地址:https://github.com/JoanZapata/android-pdfview

  3. Office 365 SDK for Android Preview
    可支持Microsoft SharePoint Lists, Microsoft SharePoint Files, Microsoft Exchange Calendar, Microsoft Exchange Contacts, Microsoft Exchange Mail
    项目地址:https://github.com/OfficeDev/Office-365-SDK-for-Android

  4. OpenSpritz-Android
    EPub阅读器
    项目地址:https://github.com/OnlyInAmerica/OpenSpritz-Android

  5. jsoup
    一个解析html的java库,可方便的提取和操作数据
    项目地址:https://github.com/jhy/jsoup
    官网网址:http://jsoup.org/
    作用:(1) 从一个url、文件或string获得html并解析
    (2) 利用dom遍历或css选择器查找、提取数据
    (3) 操作html元素
    (4) 根据白名单去除用于提交的非法数据防止xss攻击
    (5) 输出整齐的html

  6. ZIP
    java压缩和解压库
    项目地址:https://github.com/zeroturnaround/zt-zip
    文档介绍:https://github.com/zeroturnaround/zt-zip#examples
    作用:(1) 解压和压缩,并支持文件夹内递归操作
    (2) 支持包含和排除某些元素
    (3) 支持重命名元素
    (4) 支持遍历zip包内容
    (5) 比较两个zip包等功能
    技术分享

十三、其他

  1. Salvage view
    带View缓存的Viewpager PagerAdapter,很方便使用
    项目地址:https://github.com/JakeWharton/salvage

  2. Android Priority Job Queue
    Android后台任务队列
    项目地址:https://github.com/path/android-priority-jobqueue
    文档介绍:https://github.com/path/android-priority-jobqueue#getting-started

  3. Cobub Razor
    开源的mobile行为分析系统,包括web端、android端,支持ios和window phone
    项目地址:https://github.com/cobub/razor
    Demo地址:http://demo.cobub.com/razor
    官网网址:http://dev.cobub.com/

  4. Countly
    Android移动端数据采集分析系统
    项目地址:https://github.com/Countly/countly-sdk-android
    官网网址:https://count.ly/

  5. aFileChooser
    文件选择器,可内嵌到程序中,而无需使用系统或三方文件选择器。
    项目地址:https://github.com/iPaulPro/aFileChooser

  6. androidpn
    基于xmpp协议的消息推送解决方案,包括服务器端和android端。
    项目地址:https://github.com/dannytiehui/androidpn

  7. Bolts
    Android的异步编程模式
    项目地址:https://github.com/BoltsFramework/Bolts-Android/
    与AsyncTask比较:(1) 使用的是无大小限制的线程池
    (2) 任务可组合可级联,防止了代码耦合

  8. CastCompanionLibrary-android
    使Android程序中更快的接入Google Cast
    项目地址:https://github.com/googlecast/CastCompanionLibrary-android
    文档介绍:https://developers.google.com/cast/

  9. CastVideos-android
    从Android设备分享Video通过Google Cast
    项目地址:https://github.com/googlecast/CastVideos-android
    文档介绍:https://developers.google.com/cast/

  10. Uninstall_Statics
    Android应用自身被卸载监听及打开浏览器等反馈功能实现
    项目地址:https://github.com/sevenler/Uninstall_Statics
    文档介绍:http://www.cnblogs.com/zealotrouge/p/3157126.html http://www.cnblogs.com/zealotrouge/p/3159772.html

  11. Memento
    保证在系统配置改变时,Activity中的某些数据可以简单安全的保持不变
    项目地址:https://github.com/mttkay/memento
    文档介绍:https://github.com/mttkay/memento#usage

  12. FreeFlow
    布局引擎,更简单的创建自定义布局,并且当数据和布局改变时更美观的过渡动画
    项目地址:https://github.com/Comcast/FreeFlow
    Demo地址:https://github.com/Comcast/FreeFlow/releases

  13. Android Gesture Detectors Framework
    Android手势框架,支持双指旋转、移动、平移、缩放等
    项目地址:https://github.com/Almeros/android-gesture-detectors

  14. Mapbox Android SDK
    Android Map的替代版
    项目地址:https://github.com/mapbox/mapbox-android-sdk

  15. Activity animation
    Activity跳转动画,支持各个方向波浪的效果
    项目地址:https://github.com/flavienlaurent/activityanimation
    在线演示:https://www.youtube.com/watch?v=-E0sc6w_Jck

  16. KryoNet
    通过NIO提供客户端和服务器端TCP/UDP网络传输的Java库
    项目地址:https://github.com/EsotericSoftware/kryonet

  17. Rebound
    一个模仿弹簧反弹的Java库,可用于创建动画
    项目地址:https://github.com/facebook/rebound

  18. Android Social Networks
    社交网络接入统一管理器,可方便的从Twitter, LinkedIn, Facebook, Google Plus登陆、获得个人信息、发送消息、发送专篇、添加或删除好友
    项目地址:https://github.com/antonkrasov/AndroidSocialNetworks
    Demo地址:https://play.google.com/store/apps/details?id=com.github.androidsocialnetworks.apidemos

  19. SmartAppUpdates
    Android App 增量升级,包含前后端方案、Demo、以及 so 库,可用于商店或大体积 App 差分升级
    项目地址:https://github.com/cundong/SmartAppUpdates

  20. Magnet
    创建类似 Facebook 聊天桌面悬浮窗的效果
    项目地址:https://github.com/premnirmal/Magnet

  21. Parceler
    通过注解及工具类自动完成实体类 Parcelable及值传递
    项目地址:https://github.com/johncarl81/parceler

  22. AcDisplay
    将 Android 的通知都集中到锁屏显示
    项目地址:https://github.com/AChep/AcDisplay
    Demo地址:https://play.google.com/store/apps/details?id=com.achep.acdisplay

  23. QrCodeScan
    ZXing和ZBar结合的二维码扫描项目,提高了扫描效率
    项目地址:https://github.com/SkillCollege/QrCodeScan
    效果图:技术分享

  24. Android-ScreenShot
    实现android系统截屏功能
    项目地址:https://github.com/Android-ScreenShot/AndroidScreenShotService
    文档介绍:http://blog.csdn.net/buptgshengod/article/details/39155979

  25. card.io SDK for Android
    信用卡扫描 Android SDK
    项目地址:https://github.com/card-io/card.io-Android-SDK
    Demo项目:https://github.com/card-io/card.io-Android-SDK/tree/master/SampleApp

  26. ASNE
    Twitter, Facebook, Google Plus, LinkedIn, Instagram, Vkontakte, Odnoklassniki 的集成库,包括他们的大多数功能
    项目地址:https://github.com/gorbin/ASNE
    Demo地址:https://play.google.com/store/apps/details?id=com.gorbin.androidsocialnetworksextended.asne

  27. Android Signature Pad
    Android 自定义的签名 View,可自定义笔颜色和大小
    项目地址:https://github.com/gcacace/android-signaturepad
    Demo项目:https://github.com/gcacace/android-signaturepad/tree/master/SignaturePad-Example

  28. Teleport
    Android Wear 数据同步和消息传送库
    项目地址:https://github.com/Mariuxtheone/Teleport

  29. DebugLog
    可以帮你创建更简单和更容易理解的调试日志,能够友好的显示调试信息所在类和函数。
    项目地址:https://github.com/MustafaFerhan/DebugLog
    效果图:技术分享 技术分享

  30. Logger
    简单、美观而且十分强大的Android日志工具
    项目地址:https://github.com/orhanobut/logger
    Demo地址:https://github.com/orhanobut/logger/tree/master/app
    效果图:技术分享

版权声明:本文为博主原创文章,未经博主允许不得转载。

Android 开源项目android-open-project工具库解析之(二) 高版本向低版本兼容,多媒体相关,事件总线(订阅者模式),传感器,安全,插件化,文件

标签:高版本向低版本兼容   多媒体相关   事件总线订阅者模式   传感器和安全技术   插件化和文件操作   

原文地址:http://blog.csdn.net/pcaxb/article/details/46775709

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!