- 博客(15)
- 资源 (1)
- 收藏
- 关注
转载 Android中WebView的JavaScript-native交互
一、Android中WebView的漏洞分析最近在开发过程中遇到一个问题,就是WebView使用的时候,还是需要解决之前系统(4.2之前)导致的一个漏洞,虽然现在这个系统版本用户很少了,但是也不能忽视,关于这个漏洞,这里就不多做解释了,可能有的同学早就了解了,本来想写一篇文章详细介绍一下,但是网上的知识太多了,而且都很详细,就没弄了,这里大致简单明了的说几句:第一、漏洞产生的原因这个漏
2016-11-30 23:40:39 364
转载 JNI 实战全面解析
简介项目决定移植一款C++开源项目到Android平台,开始对JNI深入研究。JNI是什么?JNI(JavaNative Interface)意为Java本地调用,它允许Java代码和其他语言写的代码进行交互,简单的说,一种在Java虚拟机控制下执行代码的标准机制。NDK是什么?Android NDK(Native Development Kit )是一套工具集合,允许
2016-11-30 22:45:33 499
原创 超全超好用的ndk开发环境搭建参考文档,eclipse和android studio
发现超全超好用的ndk开发环境搭建参考文档,记录一下:Eclipse 平台http://blog.csdn.net/dagaozi/article/details/50881358http://blog.csdn.net/dagaozi/article/details/50883564Android studio 平台http:/
2016-11-29 16:26:25 274
原创 仿切换直播动画
直播和im越来越火了。。。。来个切换直播动画的小例子,以下是效果图:实现原理自定义一个控件,重写ontouch事件,根据手指移动方向判断需要显示的是上面板还是下面板,然后让面板跟着手指的方向移动,松手时面板超过高度的1/5便利用Scroller 控制面板盖过全屏,滚动动画结束时回调切换直播的方法,松手时面板未超过高度的1/5便利用Scroller 控制面板反方向
2016-11-29 15:21:24 466
原创 Android获取屏幕宽度的4种方法
Android获取屏幕宽度的4种方法方法一: WindowManager wm = (WindowManager) this .getSystemService(Context.WINDOW_SERVICE); int width = wm.getDefaultDisplay().getWidth(); int height = wm.getDefaultDisplay(
2016-11-28 16:49:33 288
原创 Android Studio 进行单元测试
AndroidStudio自带的单元测试功能是不需要修改gradle或者AndroidManifest.xml文件的。直接编写测试用例即可。由AndroidStudio创建的全新工程在src目录下会包含三个目录: - androidTest.Java.[包名] main.java.[包名] test.java.[包名] - mian目录下为项目代码,an
2016-11-27 20:05:23 875
原创 Android Studio 的build variants 找不到 test artifact问题
学习android进行单元测试的时候,发现我在as里的build variants 找不到 test artifact。在网上找了下资料发现as2.0之后默认是没有这个选项的, 那么怎么打开这个选项呢? 通过设置File -> Settings -> Build, Execution, Deployment -> Build Tools -> Gradle -> E
2016-11-27 19:46:48 6648 1
原创 怎么把自己的Android library上传到jCenter和Maven Central
看了网上好多篇相关文章,研究许久,才终于成功,自己整理并分享给大家如果你想在Android Studio中引入一个library到你的项目,你只需添加如下的一行代码到模块的build.gradle文件中。dependencies { compile 'com.facebook.fresco:fresco:0.9.0'}就是如此简单的一行代码,你就可以使用这个l
2016-11-26 13:43:05 1606
原创 设计模式之单例模式
定义 单例模式是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例的特殊类。通过单例模式可以保证系统中一个类只有一个实例 优缺点优点一、实例控制 单例模式会阻止其他对象实例化其自己的单例对象的副本,从而确保所有对象都访问唯一实例。二、灵活 因为类控制了实例化过程,所以类可以灵活更改实例化
2016-11-25 16:37:24 1021
转载 Android Gradle Plugin指南(五)——Build Variants(构建变种版本)
6、 Build Variants(构建变种版本)新构建系统的一个目标就是允许为同一个应用创建不同的版本。这里有两个主要的使用情景: 1、同一个应用的不同版本。例如一个免费的版本和一个收费的专业版本。 2、同一个应用需要打包成不同的apk以发布Google Play Store。查看http://developer.android.com
2016-11-23 14:08:51 464
转载 BuildConfig:Gradle自定义你的BuildConfig
BuildConfig.DEBUG首先在Gradle脚本中默认的debug和release两种模式BuildCondig.DEBUG字段分别为true和false,而且不可更改。该字段编译后自动生成,在Studio中生成的目录在app/build/source/BuildConfig/Build Varients/package name/BuildConfig 文件下。我们以9GAG为例
2016-11-23 13:45:20 838
转载 深入浅出Android动态加载jar包技术
在实际项目中,由于某些业务频繁变更而导致频繁升级客户端的弊病会造成较差的用户体验,而这也恰是Web App的优势,于是便衍生了一种思路,将核心的易于变更的业务封装在jar包里然后通过网络下载下来,再由android动态加载执行的方案,以改善频繁升级的毛病 --前言该技术的具体实现步骤可参考农民伯伯的博客:http://www.cnblogs.com/over1
2016-11-22 17:20:16 1428
转载 怎么将 Android 程序做成插件化的形式?
Android 插件化 动态升级不少朋友私信问到这个问题,这里简单介绍下我的了解1、作用大多数朋友开始接触这个问题是因为 App 爆棚了,方法数超过了一个 Dex 最大方法数 65535 的上限,因而便有了插件化的概念,将一个 App 划分为多个插件(Apk 或相关格式) 常用的其他解决方法还包括:Google Multidex,用 H5 代替部分逻辑,
2016-11-22 17:17:34 1063 1
转载 NDK下获取IEIM并且使用MD5算法加密:
#include #include #include "MD5.h"#include #include string>#include #include "IEIM.h"#define LOGW(Message) __android_log_print(ANDROID_LOG_INFO , "JNILog", Message)extern "C" {//内置函数inlin
2016-11-22 16:21:32 770
转载 动态加载与插件化
插件化备忘一、 概述 当一个软件项目开发结束并交互使用后,需要添加一些新的功能,我们通常希望在不修改原有的应用程序情况下,将新添加的功能植入到系统中,这就是所谓的插件化,新增加的功能模块就叫插件。插件化能大大的降低模块间的耦合性,有利于各模块的独立维护,加快项目的维护更新。这里记录了下,主流的集中语言,实现插件化的方法。二、 Java、Net和c/c++ 动态加载方式
2016-11-22 16:06:40 666
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人