- 博客(42)
- 收藏
- 关注

原创 Android/IOS TAG
1 实用工具AJSON Json 处理B蓝湖 UI颜色尺寸设计C墨刀-众安 原型设计DIconfont-阿里巴巴矢量图标库 Icon 图标E在线markdown md 编辑工具F图标工场IOS Android/IOS图标Gfir.im Fir App公测平台H草料二维码 二维码生成工具IProcess...
2019-04-12 14:33:45
356
转载 Android Gradle 版本对应关系
各个 Android Gradle 插件版本所需的 Gradle 版本。为了获得最佳性能,您应使用 Gradle 和插件这两者的最新版本。插件版本 所需的 Gradle 版本 1.0.0 - 1.1.3 2.2.1 - 2.3 1.2.0 - 1.3.1 2.2.1 - 2.9 1.5.0 2.2.1 - 2.13 2.0.0 - 2.1.2 2.10 - 2.13 2.1.3 - 2.2.3 2.14.1+ 2.3.0+ 3.3+
2021-03-25 14:46:36
4091
1
原创 Android 大版本适配
1 市场份额总结:A市场主要集中在6/7,厂商集中在对8/9的优化B 所以熟悉android M/N的版本特性是基础,这块市场份额最大;同时研究android O/P的新特性,来应对厂商最新手机版本C 旧手机集中在4.4 以后,minSdkVersion设置为19,比较适用然后我们将App targetSdkVersion改为对应的版本号6/7/8/9 (23M/24N/26O/2...
2019-04-18 12:06:04
1108
原创 关于并发的思考:从数据库、到线程 、再到进程
并发,顾名思义就是同时进行,一并触发1 DB 数据库比较典型的,就是后端数据库更新,比如秒杀问题,只有一个商品,100个人抢常见的悲观模式,假设抢不到,A上来就持锁,后面的人全部等待,A处理完了再释放缺点也很明显,性能比较差,1个人处理,99个人等待推荐:乐观模式,假设可以抢到,所有人都去操作数据库,将唯一性的问题交给数据库如果保证一起update 谁成功? 谁失败?增加一个标记Ve...
2019-04-11 10:33:52
252
转载 Android shape 参数
<?xml version="1.0" encoding="utf-8"?><!-- shape drawable xml文件中定义的一个几何图形,定义在res/drawable/目录下,文件名filename称为访问的资源ID 在代码中通过R.drawable.filename进行访问,在xml文件中通过@[package:]drawable/filename...
2019-04-10 16:50:12
532
转载 Android异常大全
Android异常大全java.lang.NullPointerException这个异常的解释是"程序遇上了空指针",简单地说就是调用了未经初始化的对象或者是不存在的对象,这个错误经常出现在创建图片,调用数组这些操作中,比如图片未经初始化,或者图片创建时的路径错误等等。对数组操作中出现空指针,即把数组的初始化和数组元素的初始化混淆起来了。数组的初始化是对数组分配需要的空间,而初始化后的...
2019-04-10 09:03:17
330
原创 6 Android/IOS线程:Thread/Runnable 与 NSThread
Android Thread /Process1 为什么需要进程? 每个进程系统分配的资源有限,单进程会带来卡顿等情况。单纯的耗时操作(比如推送的长连接服务)可以放到单独的进程进程: android:process 指定运行在不同进程中。每个进程都有自己的虚拟机实例,所以涉及到进程间通信,我们可以通过AIDL来处理(当然通过共享shared_pref /文件也可以实现)需要注意,每个进...
2019-03-27 12:01:55
349
原创 Andorid/IOS 蓝牙开发总结
IOS 蓝牙ios 蓝牙依赖CoreBluetooth 库1 首先增加库 CoreBluetooth general-> Linked Frameworks and lib2 权限info.plist 申明权限,Bluetooth Peripheral Usage需要2个后台模式,app communicates usering COreBluetoothapp share...
2019-03-26 17:18:44
1467
1
原创 Beyond Compare Windows/Mac 永久使用方法
Beyond Compare 代码比对工具Windows(在提示已过期以后执行以下操作)1 卸载Beyond Compare2 然后重新安装,在启动之前,删除这个文件C:\Program Files\Beyond Compare 4\BCUnrar.dll3 删掉的时候,注意先去杀掉进程(如果无效请先去杀Beyond进程,然后再删文件)———————————————————...
2019-03-19 09:37:59
1814
原创 5 Android/IOS主页:Activity /Fragment/AppManager 与 UITabBarController/UINavigationController
Android 类似微信主页的实现:MainActivity + 4 个Fragment主要用到 ViewPager + FragmentPagerAdapter页面布局 + 适配器建立4个Fragment 给到 FragmentPagerAdapter , 适配ViewPager 即可Fragment 依赖 MainActivity 的生命周期【数组管理】IOS 类似微信主页的...
2019-03-13 12:01:48
355
原创 Android IOS 开发总结
分章节对Android/IOS 的开发过程进行对比,旨在巩固知识体系。1 环境: Android Studio 与 XCode2 主要参数:Android O 与 IOS 12.1.33 屏幕适配:dp/sp 与 pt4 设计模式: MVC/MVP 代理模式 单例模式5 主页:Activity /Fragment/AppManager 与 UITabBarController/UINavig...
2019-03-13 09:53:42
532
原创 2 Android/IOS主要参数:Android O 与 IOS 12.1
Android 华为荣耀(5.2寸) 8.0.0 1080x1920 高清1080p xxhdpi 1 7使用FileProvider 跨进程访问文件 2 7 新增分屏模式 resizeableActiviy 3 8新增通知Notification Channel...
2019-03-12 10:27:22
281
原创 19 Android/IOS Demo: Github自研Demo
https://github.com/cheng-junfeng/smart 自定义功能:模仿支付宝的首页功能自定义 2018/6/22 10:54 三方登录:集成友盟的SDK三方登录和分享(微信QQ的key值待后台开放账号的审核,暂无法用) 2018/6/6 16:44 环境模块:不使用系统接口,来获取运行中...
2019-03-12 09:42:39
279
原创 3 Android/IOS 屏幕适配: dp/sp 与 pt
1 Android 尺寸适配: 【dp sp ->px 到 pt->px 】常用的dp sp 来定义尺寸。dp: 虚拟像素,在不同机器上自动适配公式:dp * densityDpi /160 = px 我们的 densityDpi 像素密度,比如160 320等我们用dp 描述宽高,用sp 描述字体(因为Android手机改变字体后,sp才会变化)dp sp ...
2019-03-12 09:41:32
1332
原创 16 Android/IOS最新平台:N/O/P 与 IOS11.1/12.1
android 7 N1 Notifcation 消息分组,捆绑,快速回复2 多屏: 分屏模式,并排运行两个应用 ******3 快速设置4 DataSaver 后台优化,限制后台网络 ******5 删除了Connectivity_action 新图片,新视频隐式广播,相应的响应需要特殊处理 *****6 私有文件被限制访问 sharePref 可读可写,会...
2019-03-12 09:40:21
273
原创 4 Android/IOS设计模式: MVC/MVP 代理模式 单例模式
1 MVC MVPAndroid MVP模型:Model 数据 + View(Activity/Fragment/View+Adapter) + Presenter(DataPresenter)数据代理Model 相对独立,部分View+Adapter 也相对独立,可以复用Activity 中抽取了数据处理部分 到DataPresenter 中来处理IOS MVC模型: model 数...
2019-03-12 09:39:17
290
原创 1 Android/IOS环境: Android Studio 与 XCode
1 开发环境工具:Android Studio 3.0.1+JDK1.8 +基于Gradle 4.4多模块编译配置SDK: 主流SDK26 (对应Android8.0) +最小SDK18语言:Java 语言 + (试用kotlin)适配:Android6.0/7.1/8.0的屏幕适配 + 华为/小米/OPPO厂商适配版本:输出apk + 本地debug签名 + r...
2018-12-18 15:34:07
2129
原创 14 Android/IOS常见报错: Exception 与 NSException
Android1 Error:Execution failed for task ':app:preDebugAndroidTestBuild'.Conflict with dependency 'com.android.support:support-annotations' in project ':app'. Resolved versions for app (26.1.0) and t...
2018-10-17 13:44:50
253
转载 Android 开源项目
KuaiChuan仿茄子快传的一款文件传输应用, 涉及到Socket通信,包括TCP,UDP通信项目源码:https://github.com/mayubao/KuaiChuan运行截图: CoolShopping一个仿拉手团购的购物App,采用Bmob后台实现短信验证码注册、登录、收藏、订单管理、自动更新等功能,数据抓取自拉手团购项目地址:https://gith...
2018-10-17 12:11:48
380
原创 20 Android/IOS自动构建:Jinkins/Gradle 与 fastlane
Android主要记录自动构建中遇到的问题目标:下载最新代码,编译执行1 Windows 下自动构建A 下载:下载对应分支git clone -b release git@172.16.93.30:Android/test.git最好cd test 然后git pull 一下B 编译:gradle build注意:1.1 local.properties ...
2018-09-17 18:47:03
447
原创 Android 项目总结(2)_20180810
Viewpager Fragment对数据的处理,总结如下setOffscreenPageLimit 设置期望后面预加载的个数onCreated 中初始化基本数据 (变量),和请求网络数据 (列表) 和Adapter 适配器onCreateView 中绑定布局,或动态调整布局onViewCreated 中设置监听,和动态设置setUserVisibleHint 中只刷新需要刷...
2018-08-10 16:43:10
185
原创 Android 项目总结(1)_20180808
关于前期项目中的问题,做一下总结:后续还是用MK来写,直接复制,文本样式没了。1.List对象 排序public interface Comparable<T> {int compareTo(T var1);}让Bean执行此接口,重写compareTo() 来对比对应的属性Collections.sort(output); 最后使用集合的sort方法即可 ...
2018-08-08 17:12:57
384
原创 常用网站整理
图片1 图库:贴图库http://www.tietuku.com/7affded0071fadec2 自定义抠图https://www.gaoding.com/koutu?f=ps_menu3 SVG-PNGhttps://cloudconvert.com/4 PhotoShop CChttps://creative.adobe.com/zh-cn/products...
2018-07-13 10:03:21
344
原创 Android monkey测试总结
1 应用内monkeyadb shell monkey -p com.smart -s 100 -v --throttle 300 1000 > d:/monkey.txt(adb shell monkey -p xxx.xxx.xxx -s 500 -v –throttle 300 20000) xxx.xxx.xxx(是你的包名),500 事件流,300是执行时间间隔,20000执行...
2018-07-07 12:08:32
497
原创 21 Android/IOS网页:WebView 与WKWebView
写在前面:记录开发过程中遇到的问题1.H5 页面加载到一半加载不出来public boolean onJsAlert(WebView view, String url, String message, JsResult result) {Toast.makeText(getActivity(), message, Toast.LENGTH_SHORT).show();...
2018-07-06 18:10:53
328
原创 22 Android/IOS资源文件:assets/res 与 Bundle
assets目录与res下的raw、drawable目录一样,也可用来存放资源文件,但它们三者有区别,对比总结如下表: assets res/raw res/drawable 获取资源方式: 文件路径+文件名 R.raw.xxx R.drawable.xxx 是否被压缩: NO NO...
2018-07-05 15:12:20
574
原创 Android Drawable自定义样式
1.Progress<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@android:id/background"> <shape> <corners android:radius="...
2018-07-05 14:37:53
950
原创 Android 代码优化Tips
写在前面:开发实现有千千万万种,但是好的代码结构,会带来清晰的逻辑和更优的性能1.数据与布局异步加载public class MyListAdapter { private Context context; private ArrayList<String> groupList = new ArrayList<String>(); public MyLis...
2018-07-05 12:12:14
185
转载 Android 开源框架
https://github.com/Trinea/android-open-project网络请求xutils3基于 Afinal,包含 DbUtils、ViewUtils、HttpUtils、BitmapUtils 四大模块,可用于快速开发github地址 : xutils3相关博客:Xutils3的使用VolleyGoogle 提供的网络通信库,使得网络请求更简单、更快速github地址:集...
2018-06-26 10:28:37
576
转载 Android 10个开源项目
1.项目:Rocket.ChatGithub地址:https://github.com/RocketChat/Rocket.ChatStar:14175 Fork:2952 介绍:开源完整的聊天应用。demo:androidxy.com/zh/detail/e…2.项目:plaidGithub地址:https://github.com/nickbutcher/plaidStar:9797 Fork...
2018-06-23 11:50:07
745
转载 Android 优秀开源框架
分类详细框架名称简介Star 数最近更新UI刷新SmartRefreshLayoutAndroid 智能下拉刷新框架7.7k1天UI刷新Android-PullToRefresh比较早的一款下拉刷新框架8.5k4年UI刷新android-Ultra-Pull-To-Refresh下拉刷新框架8.5k1年UI刷新BeautifulRefreshLayout众多优秀的下拉刷新汇总2.0k1年UI图表M...
2018-06-22 08:41:50
287
原创 Android Handler基本原理
1 new Handler 默认使用的是Looper.mainLooper()然而可以设置为其它Looper, 比如 HandlerThreadHandlerThread handlerThread = new HandlerThread("jun");handlerThread.start();Handler handler = new Handler(handlerThread.getLoop...
2018-06-21 16:49:56
191
原创 Android Rxjava2基本应用
1 首先认识几个对象Observable 可观察者Observer 观察者Disposable 容器,使用后即可抛弃的东西Flowable (可观察者) rxjava2 新增的FlowableProcessor (Flowable的子类),增加了toSerialized 的方法,和...
2018-06-21 16:46:15
333
原创 Adb Shell基本命令
adb remout 挂载磁盘adb install -r app-release.apk 覆盖安装APKadb logcat 打印日志adb logcat >>A1111.logadb shell run-as com.smart 进入应用文件目录adb logcat >>A1111.logprocess 查看进程adb shell p...
2018-06-21 16:45:04
899
1
原创 Git 基本命令
1 生成ssh keyssh-keygen -t rsa -C"sjun945@outlook.com"2 配置email 和usergit config --list 查看当前配置git config --global user.name "John Doe"git config --global user.email "sjun945@outlook.com"git ...
2018-06-21 16:39:23
200
原创 Android AIDL基本步骤
aidl 步骤1 project- new aidl 文件,在src/main/aidl/底下是一个接口文件2 新建service 服务,新建 接口的庄对象,实现函数private IBinder mIBinder = new IMyAidlInterface.Stub() { @Override public int getCount() throws RemoteException...
2018-06-21 16:31:37
468
原创 Android JNI 最简单的方式
TODO 设置构建本机库文件所需的 CMake的最小版本# TODO 添加自己写的 C/C++源文件SHARED# TODO 依赖 NDK中的库log )# TODO 将目标库与 NDK中的库进行连接。
2018-06-21 16:29:35
415
1
原创 Android 模块开发总结
1 资源冲突多个子模块中,res/assets 目录下的资源, 最终都在一起AS 会自动帮我们合并,默认是主模块,然后是后来的模块覆盖之前的子模块所以,资源名称一定要区分开,不然会有控件找不到的问题android { compileSdkVersion 26// resourcePrefix "file_" //资源前缀约束,会提示错误,但似乎并没有报错}resourcePrefix ...
2018-06-21 16:27:03
354
原创 Android 常用技术框架的基本使用
常用到的技术框架:1 数据库:GreenDao2 事件总线:EventBus3 链式调用:Rxjava24 网络封装:Retrofit2(Okhttps)5 视图:RecyclerView6 注解:ButterKnife7 图片:iconfont 1 GreenDao的使用1 配置依赖Project 的Gradle中buildscript{ dependencies{ classpath 'or...
2018-06-21 16:24:10
987
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人