RxTools一款强大实用的工具类集合

来源:互联网 发布:php print echo 区别 编辑:程序博客网 时间:2024/06/05 17:30

QQ群 668524118,欢迎加入交流!


Android开发人员不得不收集的工具类集合 | 支付宝支付 | 微信支付(统一下单) | 微信分享 | 一键集成UCrop选择圆形头像 | 一键集成二维码和条形码的扫描与生成 | 常用Dialog | WebView的封装可播放视频 | 仿斗鱼滑动验证码 | Toast封装 | 震动 | GPS | Location定位 | 压缩与加密 | 图片缩放 | Exif 图片添加地理位置信息(经纬度) | 编译运行一下说不定会找到惊喜。

GitHub地址:https://github.com/vondear/RxTools

RxTools RxTools API

image

工欲善其事必先利其器!Android开发过程经常需要用到各式各样的工具类,虽然大部分只需谷歌/百度一下就能找到;但是有时候急需使用却苦苦搜寻不到,于是整理了自己平常用到的工具类,以便以后的使用。

如何使用它

Step 1.先在 build.gradle(Project:XXXX) 的 repositories 添加::

allprojects {repositories {...maven { url "https://jitpack.io" }}}

Step 2. 然后在 build.gradle(Module:app) 的 dependencies 添加:

dependencies {       compile 'com.github.vondear:RxTools:v1.7.3.4'//请替换成上方 JitPack 最新的版本号}使用方法:    在Application中初始化 RxUtils.init(this);    集成二维码功能需要拷贝库里jniLibs目录里的文件到你项目的jniLibs目录

自定义控件介绍

RxToast                     : Toast的封装RxTitle                     : 自定义标题控件RxTextAutoZoom              : 文字根据布局大小自动缩放效果RxRunTextView               : TextView实现跑马灯效果RxTextviewVertical          : 单行文字上下滚动RxTextViewVerticalMore      : 多行文字上下滚动RxAutoImageView             : ImageView实现自动左右移动效果RxBarCode                   : 条形码控件(需拷贝jniLibs目录)RxQRCode                    : 二维码控件(需拷贝jniLibs目录)RxNetSpeedView              : 显示当前网速控件RxToolTip                   : 实现popupWindow效果RxRoundProgress             : 实现弧形进度条RxProgressBar               : 自定义进度条RxShoppingView              : 商品数量加减控件RxSeatMovie                 : 电影院选座控件RxSeatAirplane              : 飞机票选座控件RxRulerWheelView            : 刻度横向滚动控件RxCaptcha                   : 验证码控件

Dialog的封装(RxDialog)

skipTools                   : 隐藏头部导航栏状态栏setFullScreen               : 文字根据布局大小自动缩放效果setFullScreenWidth          : 设置宽度match_parentsetFullScreenHeight         : 设置高度为match_parentsetOnWhole                  : 设置成全局Dialog

Activity的封装

ActivityBase                : 封装了FragmentActivity与Context成员参数ActivityCodeTool            : 封装了生成二维码与条形码的ActivityActivityScanerCode          : 封装了扫描二维码与条形码的ActivityActivityWebView             : 封装了可播放视频、获取网页标题并可根据内容自动适应大小WebView的Activity

Demo介绍

RxPhotoUtils操作UCrop裁剪图片

  

二维码与条形码的扫描与生成

  

常用的Dialog展示

  

  

其他功能展示

  

  

功能模块介绍

常用功能 -> RxUtils.java

hideKeyboard                : 点击隐藏软键盘countDown                   : 倒计时(获取验证码倒计时)showToast                   : 封装了Toast的方法fixListViewHeight           : 手动计算出listView的高度,但是不再具有滚动效果createQRImage               : 生成二维码drawLinecode                : 生成条形码Md5                         : 生成MD5加密32位字符串

图像操作相关 -> RxImageUtils.java

单位转换dp2px                       : dp转pxdip2px                      : dip转pxpx2dp                       : px转dppx2dip                      : px转dipsp2px                       : sp转pxpx2sp                       : px转sp图片处理相关bitmap2Bytes                : bitmap转byteArrbytes2Bitmap                : byteArr转bitmapdrawable2Bitmap             : drawable转bitmapbitmap2Drawable             : bitmap转drawabledrawable2Bytes              : drawable转byteArrbytes2Drawable              : byteArr转drawablecalculateInSampleSize       : 计算采样大小getBitmap                   : 从文件/InputStream流/resId中获取bitmapscale                       : 缩放图片clip                        : 裁剪图片skew                        : 倾斜图片rotate                      : 旋转图片getRotateDegree             : 获取图片旋转角度toRound                     : 转为圆形图片toRoundCorner               : 转为圆角图片fastBlur                    : 快速模糊renderScriptBlur            : renderScript模糊图片(API大于17)stackBlur                   : stack模糊图片addFrame                    : 添加颜色边框addReflection               : 添加倒影addTextWatermark            : 添加文字水印addImageWatermark           : 添加图片水印toAlpha                     : 转为alpha位图toGray                      : 转为灰度图片save                        : 保存图片isImage                     : 根据文件名判断文件是否为图片getImageType                : 获取图片类型图片压缩有关compressByScale             : 按缩放压缩compressByQuality           : 按质量压缩compressBySampleSize        : 按采样大小压缩GetLocalOrNetBitmap         : 得到本地或者网络上的bitmapgetColorByInt               : 将16进制的颜色转化成10进制FilpAnimation               : 界面翻转动画

数据处理相关 -> RxDataUtils.java

数据的判断isNullString                :判断字符串是否为空 为空即trueisEmpty                     : 判断对象是否为空 为空即trueisInteger                   :判断字符串是否是整数isDouble                    :判断字符串是否是浮点数isNumber                    :判断字符串是否是数字getAstro                    :根据日期判断星座数据的转换stringToInt                 :字符串转换成整数 ,转换失败将会 return 0;stringToLong                :字符串转换成long ,转换失败将会 return 0;stringToDouble              :字符串转换成double ,转换失败将会 return 0;simpleDateFormat            :将date转换成format格式的日期Date2Timestamp              : 将日期字符串 按照 指定的格式 转换成 DATEgetDate                     :时间戳  转换成 指定格式的日期string2Timestamp            :将 yyyy年MM月dd日 转换成 时间戳getCurrentDateTime          :获取当前日期时间 / 得到今天的日期getYestoryDate              :得到昨天的日期formatTime                  :视频时间 转换成 "mm:ss"formatSeconds               :"mm:ss" 转换成 视频时间getDaysByYearMonth          :根据年 月 获取对应的月份 天数StringToInputStream         :字符串转InputStreamupperFirstLetter            :首字母大写lowerFirstLetter            :首字母小写reverse                     :反转字符串toDBC                       :转化为半角字符toSBC                       :转化为全角字符oneCn2ASCII                 :单个汉字转成ASCII码oneCn2PY                    :单个汉字转成拼音getPYFirstLetter            :获得第一个汉字首字母cn2PY                       :中文转拼音bytes2HexString             :byteArr转hexStringhexString2Bytes             :hexString转byteArrhex2Dec                     :hexChar转intchars2Bytes                 :charArr转byteArrbytes2Chars                 :byteArr转charArrbyte2Size                   :字节数转以unit为单位的sizesize2Byte                   :以unit为单位的size转字节数byte2FitSize                :字节数转合适大小input2OutputStream          :inputStream转outputStreamoutput2InputStream          :outputStream转inputStreaminputStream2Bytes           :inputStream转byteArrbytes2InputStream           :byteArr转inputStreamoutputStream2Bytes          :outputStream转byteArrbytes2OutputStream          :outputStream转byteArrinputStream2String          :inputStream转string按编码string2InputStream          :string转inputStream按编码outputStream2String         :outputStream转string按编码string2OutputStream         :string转outputStream按编码正则判断isMobile                    :判断是否为真实手机号isMobileSimple              :验证手机号(简单)isMobileExact               :验证手机号(精确)isTel                       :验证电话号码isBankCard                  :验证银卡卡号validateIdCard              :15位和18位身份证号码的正则表达式 身份证验证isIDCard15                  :验证身份证号码15位isIDCard18                  :验证身份证号码18位isEmail                     :验证邮箱isURL                       :验证URLisChz                       :验证汉字isUsername                  :验证用户名isDate                      :验证yyyy-MM-dd格式的日期校验,已考虑平闰年isIP                        :验证IP地址isMatch                     :string是否匹配regexstringFormat                : String.Format方法的封装hideMobilePhone             :隐藏手机中间4位号码formatCard                  :格式化银行卡 隐藏中间8位号码formatCardEndFour           :获取银行卡后四位format2Decimals             :将字符串格式化为带两位小数的字符串

RxActivityUtils

isExistActivity             : 判断是否存在指定ActivitylaunchActivity              : 打开指定的ActivityskipActivity                : 跳转到指定ActivityskipActivityAndFinish       : 跳转到指定Activity并关闭当前ActivityskipActivityAndFinishAll    : 跳转后Finish之前所有的ActivityskipActivityForResult       : activityForResult封装getLauncherActivity         : 获取launcher activity

RxAnimationUtils

animationColorGradient      : 颜色渐变动画cardFilpAnimation           : 卡片翻转动画

RxAppUtils

InstallAPK                  :安装APKinstallApp                  : 安装App(支持6.0)installAppSilent            : 静默安装AppuninstallApp                : 卸载AppuninstallAppSilent          : 静默卸载AppisAppRoot                   : 判断App是否有root权限launchApp                   : 打开AppgetAppPackageName           : 获取App包名getAppDetailsSettings       : 获取App具体设置getAppName                  : 获取App名称getAppIcon                  : 获取App图标getAppPath                  : 获取App路径getAppVersionName           : 获取App版本号getAppVersionCode           : 获取App版本码isSystemApp                 : 判断App是否是系统应用isAppDebug                  : 判断App是否是Debug版本getAppSignature             : 获取App签名getAppSignatureSHA1         : 获取应用签名的的SHA1值isInstallApp                : 判断App是否安装getAppInfo                  : 获取当前App信息getBean                     : 得到AppInfo的BeangetAllAppsInfo              : 获取所有已安装App信息isAppBackground             :判断当前App处于前台还是后台

状态栏相关 -> RxBarUtils.java

setTransparentStatusBar     : 设置透明状态栏(api大于19方可使用)hideStatusBar               : 隐藏状态栏noTitle                     :隐藏TitleFLAG_FULLSCREEN             : 设置全屏getStatusBarHeight          : 获取状态栏高度isStatusBarExists           : 判断状态栏是否存在getActionBarHeight          : 获取ActionBar高度showNotificationBar         : 显示通知栏hideNotificationBar         : 隐藏通知栏invokePanels                : 反射唤醒通知栏

照相机相关 -> RxCameraUtils.java

getOpenCameraIntent         : 获取打开照程序界面的IntentgetImagePickerIntent        : 获取[跳转至相册选择界面,并跳转至裁剪界面,可以指定是否缩放裁剪区域]的IntentgetCameraIntent             : 获取[跳转至相册选择界面,并跳转至裁剪界面,默认可缩放裁剪区域]的IntentgetCropImageIntent          : 获取[跳转至裁剪界面]的IntentgetChoosedImage             : 获得选中相册的图片getChoosedImagePath         : 获得选中相册的图片路径getTakePictureFile          : 获取拍照之后的照片文件(JPG格式)

常量相关 -> RxConstUtils.java

存储相关常量BYTE                        : Byte与Byte的倍数KB                          : KB与Byte的倍数MB                          : MB与Byte的倍数GB                          : GB与Byte的倍数时间相关常量MSEC                        : 毫秒与毫秒的倍数SEC                         : 秒与毫秒的倍数MIN                         : 分与毫秒的倍数HOUR                        : 时与毫秒的倍数DAY                         : 天与毫秒的倍数正则相关常量REGEX_MOBILE_SIMPLE         : 手机号(简单)REGEX_MOBILE_EXACT          : 手机号(精确)REGEX_TEL                   : 电话号码REGEX_IDCARD15              : 身份证号码15位REGEX_IDCARD18              :身份证号码18位REGEX_EMAIL                 :邮箱REGEX_URL                   :URLREGEX_CHZ                   :汉字REGEX_USERNAME              :用户名,取值范围为a-z,A-Z,0-9,"_",汉字,不能以"_"结尾,用户名必须是6-20位REGEX_DATE                  :yyyy-MM-dd格式的日期校验,已考虑平闰年REGEX_IP                    :IP地址

编码解码相关工具类 -> RxEncodeUtils.java

urlEncode                   :URL编码urlDecode                   :URL解码base64Encode                :Base64编码base64Encode2String         :Base64编码base64Decode                :Base64解码base64UrlSafeEncode         :Base64URL安全编码htmlEncode                  :Html编码htmlDecode                  :Html解码

加密解密相关的工具类 -> RxEncryptUtils.java

哈希加密相关encryptMD2ToString          :MD2加密encryptMD2                  :MD2加密encryptMD5ToString          :MD5加密encryptMD5                  :MD5加密encryptMD5File2String       :MD5加密文件encryptMD5File              :MD5加密文件encryptSHA1ToString         :SHA1加密encryptSHA1                 :SHA1加密encryptSHA224ToString       :SHA224加密encryptSHA224               :SHA224加密encryptSHA256ToString       :SHA256加密encryptSHA256               :SHA256加密encryptSHA384ToString       :SHA384加密encryptSHA384               :SHA384加密encryptSHA512ToString       :SHA512加密encryptSHA512               :SHA512加密encryptAlgorithm            :对data进行algorithm算法加密DES加密相关DESTemplet                  :DES加密encryptDES                  :DES加密encryptDES2Base64           :DES加密后转为Base64编码encryptDES2HexString        :DES加密后转为16进制decryptBase64DES            :DES解密Base64编码密文decryptHexStringDES         :DES解密16进制密文decryptDES                  :DES解密3DES加密相关encrypt3DES2Base64          :3DES加密后转为Base64编码encrypt3DES2HexString       :3DES加密后转为16进制encrypt3DES                 :3DES加密decryptBase64_3DES          :3DES解密Base64编码密文decryptHexString3DES        :3DES解密16进制密文decrypt3DES                 :3DES解密AES加密相关encryptAES2Base64           :AES加密后转为Base64编码encryptAES2HexString        :AES加密后转为16进制encryptAES                  :AES加密decryptBase64AES            :AES解密Base64编码密文decryptHexStringAES         :AES解密16进制密文decryptAES                  :AES解密

文件操作相关 -> RxFileUtils.java

SD卡操作getRootPath                 : 得到SD卡根目录getCecheFolder              :获取本应用图片缓存目录isSDCardEnable              :判断SD卡是否打开getSDCardPath               :获取SD卡路径getDataPath                 :获取SD卡Data路径getFreeSpace                :获取SD卡剩余空间sdCardIsAvailable           :SD卡是否可用fileExists                  :文件或者文件夹是否存在delAllFile                  :删除指定文件夹下所有文件, 不保留文件夹.copy                        :文件复制(文件路径)copyFile                    :复制文件(文件/InputStream流)copyFolder                  :复制整个文件夹内renameFile                  :重命名文件getSDCardAvailaleSize       :获取磁盘可用空间getDirSize                  :获取某个目录可用大小getFileAllSize              :获取文件或者文件夹大小initFile                    :创建一个文件initDirectory               :创建一个文件夹saveFile                    :保存InputStream流到文件saveFileUTF8                :用UTF8保存一个文件getFileUTF8                 :用UTF8读取一个文件getFileIntent               :得到一个文件IntentgetDiskCacheDir             :获取缓存目录getDiskFileDir              :获取缓存视频文件目录mergeFiles                  :多个文件拼接合并getNativeM3u                :将在线的m3u8替换成本地的m3u8write                       :将字符串 保存成 文件TextToFile                  :传入文件名以及字符串, 将字符串信息保存到文件中GetAllFileName              :获取 搜索的路径 下的 所有 后缀 的文件readFileByLines             :以行为单位读取文件,常用于读面向行的格式化文件getFileByPath               :根据文件路径获取文件isFileExists                :判断文件是否存在isDir                       :判断是否是目录isFile                      :判断是否是文件createOrExistsDir           :判断目录是否存在,不存在则判断是否创建成功createOrExistsFile          :判断文件是否存在,不存在则判断是否创建成功createFileByDeleteOldFile   :判断文件是否存在,存在则在创建之前删除copyOrMoveDir               :复制或移动目录copyOrMoveFile              :复制或移动文件copyDir                     :复制目录copyFile                    :复制文件moveDir                     :移动目录moveFile                    :移动文件deleteDir                   :删除目录deleteFile                  :删除文件    listFilesInDir              :获取目录下所有文件listFilesInDirWithFilter    :获取目录下所有后缀名为suffix的文件searchFileInDir             :获取目录下指定文件名的文件包括子目录writeFileFromIS             :将输入流写入文件writeFileFromString         :将字符串写入文件readFile2List               :指定编码按行读取文件到ListreadFile2String             :指定编码按行读取文件到字符串中readFile2Bytes              :指定编码按行读取文件到字符数组中getFileCharsetSimple        :简单获取文件编码格式getFileLines                :获取文件行数getFileSize                 :获取文件大小getFileMD5                  :获取文件的MD5校验码closeIO                     :关闭IOgetDirName                  :获取全路径中的最长目录getFileName                 :获取全路径中的文件名getFileNameNoExtension      :获取全路径中的不带拓展名的文件名getFileExtension            :获取全路径中的文件拓展名清除数据cleanInternalCache          : 清除内部缓存cleanInternalFiles          : 清除内部文件cleanInternalDbs            : 清除内部数据库cleanInternalDbByName       : 根据名称清除数据库cleanInternalSP             : 清除内部SPcleanExternalCache          : 清除外部缓存cleanCustomCache            : 清除自定义目录下的文件

剪贴板相关 -> RxClipboardUtils.java

copyText                    : 复制文本到剪贴板getText                     : 获取剪贴板的文本copyUri                     : 复制uri到剪贴板getUri                      : 获取剪贴板的uricopyIntent                  : 复制意图到剪贴板getIntent                   : 获取剪贴板的意图

进程相关 -> RxProcessUtils.java

getForegroundProcessName    : 获取前台线程包名getAllBackgroundProcesses   : 获取后台服务进程killAllBackgroundProcesses  : 杀死所有后台服务进程killBackgroundProcesses     : 杀死后台服务进程

Intent相关 -> RxIntentUtils.java

getInstallAppIntent         : 获取安装App(支持6.0)的意图getUninstallAppIntent       : 获取卸载App的意图getLaunchAppItent           : 获取打开App的意图getAppInfoIntent            : 获取App信息的意图getShareInfoIntent          : 获取App信息分享的意图getIntentByPackageName      : 根据包名获取意图getComponentNameIntent      : 获取其他应用的Intent

键盘相关 -> RxKeyboardUtils.java

hideSoftInput               : 动态隐藏软键盘showSoftInput               : 动态显示软键盘toggleSoftInput             : 切换键盘显示与否状态

网络相关 -> RxNetUtils.java

ping                        : 判断是否有外网连接isWifiEnabled               : 判断WIFI是否打开is3rd                       : 判断是否为3G网络isWifi                      : 判断网络连接方式是否为WIFIisNetworkAvailable          : 判断网络连接是否可用isGpsEnabled                : GPS是否打开getNetWork                  : 获取当前网络状态openWirelessSettings        : 打开网络设置界面getActiveNetworkInfo        : 获取活动网络信息isAvailable                 : 判断网络是否可用isConnected                 : 判断网络是否连接is4G                        : 判断网络是否是4GisWifiConnected             : 判断wifi是否连接状态getNetworkOperatorName      : 获取移动网络运营商名称getPhoneType                : 获取移动终端类型getNetWorkType              : 获取当前的网络类型getNetWorkTypeName          : 获取当前的网络类型名称

图片获取相关 -> RxPhotoUtils.java

openCameraImage             : 调用系统相机openLocalImage              : 调用系统相册cropImage                   : 裁剪图片createImagePathUri          : 创建一条图片地址uri,用于保存拍照后的照片getRealFilePath             : 获取图片uri的真实文件地址

Service相关 -> RxServiceUtils.java

isRunningService            : 获取服务是否开启

Shell相关 -> RxShellUtils.java

isRoot                      : 判断设备是否rootexecCmd                     : 是否是在root下执行命令

SharedPreferences相关 -> RxSPUtils.java

putContent                  : 单条方式存入SharedPreferencesgetContent                  : 获取标记为tag的值putJSONCache                : 存放JSON缓存数据readJSONCache               : 读取JSON缓存数据clearPreference             : 清除指定的信息(若为null 则删除name下所有的键值)

时间相关 -> RxTimeUtils.java

milliseconds2String         : 将时间戳转为时间字符串string2Milliseconds         : 将时间字符串转为时间戳string2Date                 : 将时间字符串转为Date类型date2String                 : 将Date类型转为时间字符串date2Milliseconds           : 将Date类型转为时间戳milliseconds2Date           : 将时间戳转为Date类型milliseconds2Unit           : 毫秒时间戳单位转换getIntervalTime             : 获取两个时间差getCurTimeMills             : 获取当前时间戳getCurTimeString            : 获取当前时间字符串getCurTimeDate              : 获取当前时间getIntervalByNow            : 获取与当前时间的差isLeapYear                  : 判断闰年

压缩相关 -> RxZipUtils.java

zipFiles                    : 批量压缩文件zipFile                     : 压缩文件unzipFiles                  : 批量解压文件unzipFile                   : 解压文件unzipFileByKeyword          : 解压带有关键字的文件getFilesPath                : 获取压缩文件中的文件路径链表getComments                 : 获取压缩文件中的注释链表getEntries                  : 获取压缩文件中的文件对象

线程池相关工具类 -> RxThreadPoolUtils.java

RxThreadPoolUtils          :ThreadPoolUtils构造函数execute                     :在未来某个时间执行给定的命令(链表)shutDown                    :待以前提交的任务执行完毕后关闭线程池shutDownNow                 :试图停止所有正在执行的活动任务isShutDown                  :判断线程池是否已关闭isTerminated                :关闭线程池后判断所有任务是否都已完成awaitTermination            :请求关闭、发生超时或者当前线程中断submit                      :提交一个Runnable任务用于执行invokeAll                   :执行给定的任务invokeAny                   :执行给定的任务schedule                    :延迟执行Runnable命令scheduleWithFixedRate       :延迟并循环执行命令scheduleWithFixedDelay      :延迟并以固定休息时间循环执行命令

设备工具类 -> RxDeviceUtils.java

屏幕相关getScreenHeight             :得到屏幕的高getScreenWidth              :得到屏幕的宽getScreenWidths             :得到设备屏幕的宽度getScreenHeights            :得到设备屏幕的高度getScreenDensity            :得到设备的密度setLandscape                :设置屏幕为横屏setPortrait                 :设置屏幕为竖屏isLandscape                 :判断是否横屏isPortrait                  :判断是否竖屏getScreenRotation           :获取屏幕旋转角度captureWithStatusBar        :获取当前屏幕截图,包含状态栏captureWithoutStatusBar     :获取当前屏幕截图,不包含状态栏getDisplayMetrics           :获取DisplayMetrics对象isScreenLock                :判断是否锁屏硬件信息相关getUniqueSerialNumber       :获取手机唯一标识序列号getIMEI                     :获取设备的IMEIgetIMSI                     :获取设备的IMSIgetDeviceSoftwareVersion    :获取设备的软件版本号getLine1Number              :获取手机号getNetworkCountryIso        :获取ISO标准的国家码,即国际长途区号getNetworkOperator          :获取设备的 MCC + MNCgetNetworkOperatorName      :获取(当前已注册的用户)的名字getNetworkType              :获取当前使用的网络类型getPhoneType                :获取手机类型getSimCountryIso            :获取SIM卡的国家码getSimOperator              :获取SIM卡提供的移动国家码和移动网络码.5或6位的十进制数字getSimOperatorName          :获取服务商名称getSimSerialNumber          :获取SIM卡的序列号getSimState                 :获取SIM的状态信息getSubscriberId             :获取唯一的用户IDgetVoiceMailNumber          :获取语音邮件号码getAndroid_id               :获取ANDROID IDgetBuildBrandModel          :获取设备型号,如MI2SCgetBuildBrand               :获取设备品牌名称getBuildMANUFACTURER        :获取设备厂商,如XiaomigetSerialNumber             :获取序列号getAppVersionNo             :获取App版本号getAppVersionName           :获取App版本名称checkPermission             :检查权限getDeviceInfo               :获取设备信息ThroughArray                :遍历LOG输出HashMapgetMacAddress               :获取设备MAC地址手机操作相关isPhone                     :判断设备是否是手机getPhoneStatus              :获取手机状态信息dial                        :跳至填充好phoneNumber的拨号界面callPhone                   :拨打电话sendSms                     :发送短信getAllContactInfo           :获取手机联系人getContantNum               :打开手机联系人界面点击联系人后便获取该号码getAllSMS                   :获取手机短信并保存到xml中

支付工具类

支付宝支付:

    AliPayTools.aliPay(mContext,        APP_ID,//支付宝分配的APP_ID        isRSA2,//是否是 RSA2 加密        RSA_PRIVATE,// RSA 或 RSA2 字符串        new AliPayModel(order_id,//订单ID (唯一)                        money,//价格                        name,//商品名称                        detail),//商品描述详情 (用于显示在 支付宝 的交易记录里)        new onRequestListener() {            @Override            public void onSuccess(String s) {RxToast.success("支付成功");}                                                                                                    @Override            public void onError(String s) {RxToast.error("支付失败");        }    });

微信支付:

第一种情景:支付操作全部在APP端完成(包括统一下单接口) 即支付过程无后台参与

    WechatPayTools.wechatPayUnifyOrder(mContext,        WX_APP_ID, //微信分配的APP_ID        WX_PARTNER_ID, //微信分配的 PARTNER_ID (商户ID)        WX_PRIVATE_KEY, //微信分配的 PRIVATE_KEY (私钥)        new WechatModel(order_id, //订单ID (唯一)                        money, //价格                        name, //商品名称                        detail), //商品描述详情        new onRequestListener() {            @Override            public void onSuccess(String s) {}            @Override            public void onError(String s) {}    });

第二种情景:从后台获取到 prepayid(预支付订单ID) 之后,在App端进行支付操作

    wechatPayApp(mContext,        app_id, //微信分配的APP_ID        partner_id, //微信分配的 PARTNER_ID (商户ID)        wx_private_key, //微信分配的 PRIVATE_KEY (私钥)        prepay_id, //订单ID (唯一)        new onRequestListener() {            @Override            public void onSuccess(String s) {}            @Override            public void onError(String s) {}    });

微信分享:

分享网页

    WechatShareTools.init(mContext, WX_APP_ID);//初始化        String url = "https://github.com/vondear/RxTools";//网页链接                String description = "工欲善其事必先利其器!";//描述               Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.ic_launcher);//获取Bitmap    byte[] bitmapByte = RxImageUtils.bitmap2Bytes(bitmap, Bitmap.CompressFormat.PNG);//将 Bitmap 转换成 byte[]        mWechatShareModel = new WechatShareModel(url, "APP名称", description, bitmapByte);        //Friend 分享微信好友,Zone 分享微信朋友圈,Favorites 分享微信收藏    WechatShareTools.shareURL(mWechatShareModel, WechatShareTools.SharePlace.Friend);//分享操作

APK文件

扫描二维码 或者 点击二维码 下载

RxTools

闲聊群 668524118

阅读全文
2 0