高危]WebView高危接口安全检测共2处详细内容:在Android系统4.3.1~3.0版本,系统webview默认添加了searchBoxJavaBridge_接口,如果未移除该接口可能导致低版本Android系统远程命令执行漏洞问题代码:privateWebViewa;privateWebViewa;修复建议:修复建议:判断系统版本,显式调用removeJavascriptInterface方法移除searchBoxJavaBridge_接口 if (Build.VERSION.SDK
android
WebView高危接口安全检测
Android顶部粘至视图详解
不知从某某时间开始,这种效果开始在UI设计中流行起来了,让我们先来看看效果: 大家在支付宝.美团等很多App中都有使用,要实现这个效果,我们可以来分析下思路: 我们肯定要用2个一样的布局来显示我们的粘至布局,一个是正常的.另一个是到顶部不动的,正常的那个,随着scroll一起滚,该滚到哪滚到哪,只是他滚到最上面的时候, 我们需要用粘至的布局,放到顶部,当然,他还在后面继续滚,ok,现在我们来看看具体如何实现: 先看布局,just a demo,用几张图片稍微做做样子. 粘至布局: <?xml v
Android Blur效果之FastBlur
Blur 自从iOS系统引入了Blur效果,也就是所谓的毛玻璃.模糊化效果,磨砂效果,各大系统就开始竞相模仿,这是一个怎样的效果呢,我们现来看一些图: 这些就是典型的Blur效果,在iOS和MIUI中还有很多,这里就不再贴图了. 实现 实现Blur效果主要有两种方式,一个是通过RenderScript来做,另一种是通过直接对像素点来进行算法处理. RenderScript是API11之后才引入的,所以对版本有限制,而且RenderScript确实挺复杂的,虽然使用他的Blur功能很简单,但是要真
Android调用系统Activity
本次讲解android系统内置的几种应用的activity action. 1.直接拨号 Intent callIntent = new Intent(Intent.ACTION_CALL, Uri.parse("tel:" + etPhone.getText().toString())); startActivity(callIntent); 2.调用通话记录 Intent callButtonIntent = new Intent(Intent.ACTION_CALL_BUTTON
Fragment、FragmentActivity与Activity的关系
直说总结了: 1.fragmentactivity 继承自activity,用来解决android3.0 之前没有fragment的api,所以在使用的时候需要导入support包,同时继承fragmentActivity,这样在activity中就能嵌入fragment来实现你想要的布局效果. 2.当然3.0之后你就可以直接继承自Activity,并且在其中嵌入使用fragment了. 3.获得Manager的方式也不同 3.0以下:getSupportFragmentManager() 3.
菜单使用详解0
Android中菜单分为两种:选项菜单和上下午菜单. 本次讲解选项菜单. 1.创建选项菜单: public boolean onCreateOptionsMenu(Menu menu){ /* */ menu.add(1,1,1,"菜单1"); menu.add(1,2,2,"菜单2"); menu.add(1,3,3,"菜单3"); menu.add(1,4,4,"菜单4"); return true; } 参数含义如程序所
Android 源代码自动编译packages/apps
/*************************************************************************** * Android 源代码自动编译packages/apps * 说明: * 有时候自己编写了一些测试软件,可能会希望自动编译到Android系统中去,但 * 我们又不希望每次都自己去手动编译,让系统自己编译是一个不错的选择. * * 2016-5-23 深圳 南山平山村 曾剑锋 ********************************
Android UI开发详解之Layout_gravity和gravity的区别
对于这两个属性来说: layout_gravity 表示组件自身在父组件中的位置 gravity 表示组件的子组件在组件中的位置 1.在使用时,最外层的LinearLayou的属性:androidrientation="?"是不能少的. 但我们在设置其属性的时候,有时候并不能达到我们所需要的效果,所以在此总结下他的使用注意事项. 2.当作为父layout的LinearLayout的属性为androidrientation="vertical&
将一个Activity共享成一个Action供其他程序调用
假设我们现在写好了一个字典的程序,在输入框输入字母,就能显示他的英语翻译,现在我们将这个程序共享成一个Action,这样其他程序就可以通过调用这个Action来访问这个程序. 字典程序的处理方法如下: if (getIntent().getData() != null) { String word = getIntent().getData().getHost(); String sql = "select chinese from t_words where english=?";
Android 信鸽推送通知栏不显示推送的通知
使用信鸽推送,却怎么也没反应.经过查看log发现确实是收到了推送过来的消息了,其中有这么一行: W/dalvikvm(23255): VFY: unable to resolve virtual method 1345: Landroid/support/v4/app/NotificationCompat$Builder;.build ()Landroid/app/Notification; 貌似c调用android的构造通知的那些函数调用不到,导致通知不能正常显示.看来问题出在 android
判断点是否任意多边形内的2种方法
导入 判断触摸点是否在一个多边形的内部 方法 1.数学方法 这个方法的好处是任意平台都可以使用,不仅现于Android 算法: 求解通过该点的水平线与多边形各边的交点,单边交点为奇数,则成立 ok我们其实就是需要看这个点的单边射线与多边形的交点,代码实现如下: public boolean isInPolygon(Point point, Point[] points, int n) { int nCross = 0; for (int i = 0; i < n; i++) { Point p1
Android绘图监听接口OnPreDrawListener详解
public static interface ViewTreeObserver.OnPreDrawListener 我们先看下API中的定义: 类概述: 为即将绘制视图树时执行的回调函数定义的接口. 共有方法: public abstract boolean onPreDraw () 即将绘制视图树时执行的回调函数.这时所有的视图都测量完成并确定了框架. 客户端可以使用该方法来调整滚动边框,甚至可以在绘制之前请求新的布局. 综上,ViewTreeObserver是用来帮助我们监听某些View的
Android View中的requestLayout和invalidate区别
摘抄自Api Doc RequestLayout: 当view确定自身已经不再适合现有的区域时,该view本身调用这个方法要求parent view重新调用他的onMeasure onLayout来对重新设置自己位置. 特别的当view的layoutparameter发生改变,并且它的值还没能应用到view上,这时候适合调用这个方法.也就是当通过getLayoutParrms().width = XXX的时候,我们需要重新调用RequestLayout invalidate:View类调用迫使v
Manifest merger failed : uses-sdk:minSdkVersion 9 cannot be smaller than version 10 declared in library
Error:Execution failed for task ':app:processDebugManifest'. > Manifest merger failed : uses-sdk:minSdkVersion 9 cannot be smaller than version 10 declared in library [org.piwik.sdk:piwik-sdk:0.0.3] /Users/weichunsheng/Documents/android_app/app/build
Android 大神博客汇集
非常给力的CSDNBlog和个人Blog,这些Blog都有一个共同的特点,即内容详实,讲解透彻,也算是给后来的初学者指一条路吧!只要你下定决心跟随强者的脚步,成为人们眼中的大神,只不过是时间问题! 下面排名不分先后 CSDN 鸿洋:http://blog.csdn.net/lmj623565791 爱哥:http://blog.csdn.net/aigestudio 老罗:http://blog.csdn.net/luoshengyang
系统服务详解之时间服务2
3.定时器:Timer Timer和Chronometer类似,但功能更加强大.Timer类通过schedule方法设置执行方式和时间,schedule方法的第一个参数为TimerTask,TimerTask类实现了Runnable接口,因此Timer实际上是在线程中执行run方法. 虽然Timer和Handler的处理代码都放在run方法中,但Timer是在线程中执行run方法,Handler是将执行的动作添加到Android系统的消息队列.因此使用Timer执行run方法时,在run方法中不
Failed to collect certificates from /data/app/vmdl201020547.tmp/base.apk: META-INF/CERT.SF indicates /data/app/vmdl201020547.tmp/base.apk is signed us
错误信息: 12-26 11:08:44.809 1501-1535/system_process E/PackageInstaller: Commit of session 201020547 failed: Failed to collect certificates from /data/app/vmdl201020547.tmp/base.apk: META-INF/CERT.SF indicates /data/app/vmdl201020547.tmp/base.apk is
Android 更好的Activity生命周期回调
/** * This class allows you to listen to when the user is entering the background (i.e. after a home button press, * or opening recent apps etc) and when the user resumes the application from the background. * * @author John McDonnell */ public class
Android L New API之Verctor动画 1 —— SVG Path
导入 1.VectorDrawable是Android L中新增的一个API,让你可以创建基于XML的矢量图,并结合AnimatedVectorDrawable来实现动画效果. 2.Android L新增支持Vector标签,可以使用Path创建动画,同时支持SVG格式. SVG 简介 1.SVG 指可伸缩矢量图形 (Scalable Vector Graphics)2.SVG 用来定义用于网络的基于矢量的图形3.SVG 使用 XML 格式定义图形4.SVG 图像在放大或改变尺寸的情况下其图形质
Android Design Support Library使用详解
Android Design Support Library使用详解 Google在2015的IO大会上,给我们带来了更加详细的Material Design设计规范,同时,也给我们带来了全新的Android Design Support Library,在这个support库里面,Google给我们提供了更加规范的MD设计风格的控件.最重要的是,Android Design Support Library的兼容性更广,直接可以向下兼容到Android 2.2.这不得不说是一个良心之作. 使用S