- 博客(37)
- 资源 (1)
- 收藏
- 关注
原创 Android ADB WIFI
Android ADB WIFI用法题主为什么要用ADB WIFI呢,是因为测试机用USB数据线连接过多次,导致手机USB接口接触不良,总是会中断连接。于是便使用ADB WIFI进行连接测试。主要步骤如下:Android Studio 安装ADB WIFI插件USB连接手机运行项目通过devices IP连接手机断开手机,开发测试AS安装ADB WIFI插件1、A...
2018-02-11 15:43:09
2968
原创 Android代码中设置控件属性
Android代码中设置控件属性在项目的开发过程中时常会需要在java代码中设置控件的宽高,位置,显示与隐藏等属性。我们可以理解为在布局文件中可以设置的属性,都可以在java代码中来完成,甚至我们可以不需要布局文件而完成所有页面及功能的编写。而在java代码中创建控件有以下优点: 1、页面渲染速度比在布局文件中控件加载速度快 2、可动态修改控件的属性,这点在布局文件中无法做到 3、可根据设备分
2017-07-10 14:48:38
3503
原创 Android 开机启动广播
前言Android应用开发过程中可能会有需要在移动设备开机之后做一些应用相关的操作。比如杀毒软件,应用推送等。使用Android系统默认在开机之后会发送一个全局的系统广播,我们可以在这个广播之上做些文章。自定义广播接收者public class TestBroadCastReceiver extends BroadcastReceiver { @Override public v
2017-05-11 14:34:47
3418
1
原创 Git SHA-1获取最后7位
前言我们时常会使用到Git Commit SHA-1值来记录某次提交,笔者所在的公司使用Jenkins构建APK包时就会将当前编译APK的Commit信息包含在文件名中,这样做可以快速定位到某次代码的提交使用在Shell中获取当前Commit的SHA-1值GITVER=$(git rev-list HEAD -n 1 | cut -c 1-)初始化变量GITVER并赋值,GITVER的值即为当前Co
2017-05-11 10:55:48
1968
原创 React Native指定设备运行
前言React Native运行项目会自动启动模拟器或者真机,下面为指定启动模拟器的方法注意:运行项目之前执行npm install是必须的1. AndroidAndroid运行React Native项目有两种方式:1.1 终端命令行中React native项目目录下键入react-native run-android会启动当前电脑连接的Android设备查看Android设备:在终端中输入ad
2017-05-05 18:27:28
13609
1
原创 iOS WebView与Native交互
我们在项目中不可避免的要使用到WebView,一般的用法就是WebView直接加载URL,做一些基本展示操作。但是对于一些特定的需求或逻辑,我们可能就需要WebView传递一些数据到Native,由Native来对数据做处理,比如有跨域限制或拦截WebView请求的需求时候。备注:这里的Native是相对于JavaScript来说的,是指OC代码。1. UIWebView我们这里要做到双向交互,要求
2017-04-27 18:02:38
3136
原创 AFNetworking错误码-1011
今天写iOS代码和后台连调的过程中,发现服务器返回给我bad request之后,无法解析服务器返回值。 我以为是服务器问题,于是起了一个play framework工程,写了一个很简单的打印客户端请求,并返回一个json字符串到客户端的工程。代码实例如下:public Result log(){ JsonNode j = request().body().asJson(); Syst
2017-03-08 10:06:14
18945
原创 iOS获取网络状态
iOS获取网络状态我们在开发中时常需要获取网络状态,比如下载文件需要判断网络是否连接状态,网络状态由Wi-Fi关闭时停止下载等操作。最简单的方式就是通过AFNetworking框架: switch ([[AFNetworkReachabilityManager sharedManager]networkReachabilityStatus]) { case AFNetworkReachabi
2017-02-28 16:45:52
593
原创 Android命令行启动模拟器
前言我们在平时的开发中会经常需要使用模拟器进行调试,这个时候我们就要先打开Eclipse或者Android Studio来启动模拟器,然后再运行App。这个流程中启动Eclipse和Android Studio需要花费一些时间,而模拟器的启动也会很慢,对于我们这样喜欢命令行操作的程序员来讲简直是不能容忍的。adb 启动模拟器:显示系统中全部Android平台: android list target
2017-01-24 16:56:55
17402
原创 APK打包过程分析
ANDROID打包过程1. 版本历史 版本号 日期 修订人 描述 0.01 2016.01.04 2. 文档目的深入理解android打包流程整合android相关技术文档3. 目标读者android开发人员4. apk生成的过程4.1 apk生成流程图图片来源于http://blog.youkuaiyun.com/Sky_Monkey 4.2 apk生成过程生成
2017-01-23 12:50:29
700
原创 Jenkins Gradle 打包
Android Studio Gradle1. 版本历史 日期 版本号 修订人 备注 20160112 0.01 黄文博 初版2. 目标读者jenkins打包人员3. 文档目的简单介绍Android Studio Gradle在jenkins上构建Android Studio的工程4. 主要内容4.1 Gradle简介Gradle是一种依赖管理工具,基于Gr
2017-01-23 12:40:41
6828
原创 Android shell
Android相关shell编程1. 版本历史 时间 描述 版本号 修订人 20160105 初稿 0.01 黄文博2. 目标读者需要学习shell编程的人员3. 文档目的简要介绍shell编程为android的ant打包与jenkins的持续构建奠定基础4. 主要内容4.1 shell基本语法4.1.1 shell变量variableName="value
2017-01-23 12:33:21
916
1
原创 2017重新开始
2016年发生了很多事情,总体来说是稳定,没有太大的变化,自己期望的最后也只是期望而已。不过自己的技术领域倒是扩宽了很多,由以前纯粹的android开发到现在Android与iOS开发都做,也参与了后台项目的开发。Android从以前的App开发转化到现在Android APP开发,SDK开发,另外在Android的逆向分析也有一定涉及了。中间优快云博客断了将近一年,是因为中间有段时间转了G
2017-01-23 12:21:55
323
原创 Android SDK开发
很久没有更新博客了,因为工作的需要,目前为公司开发一个sdk以供公司各个项目的集成。我们在开发过程中,可以把我们的sdk项目依赖到宿主程序中,等待功能完成之后,把sdk以jar导出,注意,导出jar时候只导出src下的java代码,其他代码都不要导出。然后在宿主程序中将之前对依赖关系去掉,取而代之的将我们刚打包到jar放到我们宿主程序的libs中,另外将sdk中的资源文件拷贝到宿主程序中,
2015-10-13 10:04:24
645
原创 Android 如何提高页面加载速度
最近整理了一些关于加载页面布局文件方面的资料,觉得对我以后的android开发工作很有帮助。我们不能只是单纯的满足于在代码中把界面实现,把功能实现,因为这只能称为是“翻译”界面,“翻译”功能。我们要做的是要把我们的应用更快,更好的,更稳定的运行的手机中!所以我们要关注每个可能为我们的程序带来提升的功能点!而提高加载页面布局文件的速度就是一个很重要的部分!1、直接在java代码中写布局要比在xm
2015-07-19 09:31:26
5793
原创 Android反编译apk
基于某些原因,你可能想要反编译一款应用,即便最终不一定能够达到想要的效果。因为一些应用做了混淆操作或者防止反编译!我们都知道java特性造成了一些不安全的因素。反编译用到的工具是dex2jar和jd-gui两款应用,大家可以下载附件中的两款应用反编译工具jd-gui作用的就是jar文件,所以我们要先把apk变成jar。apk文件就是一压缩包,我们可以使用解压工具将apk解压,解压后
2015-06-12 13:29:02
519
原创 Android getCacheDir和getFilesDir区别
最近在安卓的开发中,对系统提供的几个文件保存的路径探索了一下。下面是我自己的demo中对不同的方法的路径打印出来的结果!getCacheDir:/data/data/com.example.sinatext/cache getFilesDir:/data/data/com.example.sinatext/files getExternalCacheDir:/storage/s
2015-06-12 12:01:58
6938
原创 环信im集成
最近公司准备集成im模块,于是便调研了环信的sdk,自己注册了开发者账号,并且在demo实现现在的技术真的是日新月异,发展太快了,记得一年前时候,自己参与的项目要集成im模块,那时候是公司成立了一个im团队,几十个人搞这个,但是做出来的效果却不是很稳定,并且效果也有些不尽人意。不得不说现在sdk太强大了,各种功能的sdk都有。现在公司的项目决定采用环信的sdk来集成im模块。仔细阅读了环信
2015-05-31 10:23:31
1442
原创 抓包工具的使用
最近很长时间没有更新博客了,一方面是因为自己比较忙,另外一方面,最近感觉到很迷茫。心中的那团火焰也一直在燃烧,这不是我想要的生活,趁着年轻,要抓住机会,再多努力一把。也希望大家朋友都能够尽早的找到自己的目标,不只是近阶段的目标,还有人生的目标、蓝图。为这个目标而奋斗。抓包很简单,以前一直以为很高大,在这里我就讲一下如何使用抓包工具,几分钟就可以搞定。我使用的抓包工具是wir
2015-05-29 16:08:59
728
原创 浅谈parcelable与serializable
parcelable与serializable都是序列化的操作,那么我们先看 一下为何要使用序列化!1)永久性保存对象,保存对象的字节序列到本地文件中;2)通过序列化对象在网络中传递对象;3)通过序列化在进程间传递对象。我们在项目中最经常遇到的情况就是,我们需要在activity或者service中传递对象,这个时候就需要用到序列化了!(需要在多个部件(Activity或Ser
2015-02-16 13:47:57
404
原创 根据apk的路径判断是否安装
public boolean isAppInstalled(String uri) { try { PackageManager pm = mContext.getPackageManager(); PackageInfo packageInfo = pm.getPackageArchiveInfo(uri, PackageMa
2015-02-03 10:30:56
422
原创 textview展示换行问题
我们在textview展示一行文字的时候如果这个字符串中混杂着中文和英文还有标点符号,这个时候会莫名其妙的在textview中展示有换行的效果,这是由于中英文半角全角导致的,我们可以对这个字符串进行半角全角处理。 /** * change string from half radius to full radius; used for change vidoe title;
2015-01-28 13:50:54
630
原创 友盟的一些使用
使用友盟对用户的意见反馈进行统计。package com.dewmobile.zapya.receiver;import java.util.List;import java.util.concurrent.ScheduledThreadPoolExecutor;import java.util.concurrent.TimeUnit;import android.an
2015-01-28 13:36:38
1009
原创 adroid自定义notification通知栏
DmNotificationManager.Builder builder = DmNotificationManager.getDefaultBuild(getApplicationContext(), getResources().getText(R.string.feedbac
2015-01-27 14:54:52
666
转载 关于Code Review的那些事
关于Code Review的那些事!http://www.cnblogs.com/panshuiqing/articles/1147065.html
2015-01-27 14:52:28
358
原创 安卓随手笔记五:(定位系统 上)
定位系统(以确定空间位置为目标而构成的相互关联的一个集合体或装置(部件))一般指全球定位系统(Global Positioning System),我们目前
2014-06-15 19:52:17
656
原创 安卓随手笔记四:(判断第三方app是否安装并启动)
话说今晚西班牙队与荷兰队,很是期待啊!为什么会判断第三方app是否安装呢?比如,我们在某个应用中获取到用户当前位置的经度纬度,然后呢,想要在百度地图中把这个位置给显示出来,那么我们就要先判断是否安装百度地图,然后才是启动第三方app目前生活中,比较常用的是百度地图和高德地图判断是否安装了某个app,我们是通过包名检测系统中是否安装了某个应用程序 /** * 判断手机是
2014-06-13 19:30:17
1722
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人