Android 4.2一些变动

如果您使用了webview控件,需要在JS代码中访问Java中的函数,则您会用到WebView的addJavascriptInterface()函数。因为安全问题,在Android4.2中(如果应用的android:targetSdkVersion数值为17+)JS只能访问带有 @JavascriptInterface注解的Java函数

之前,任何Public的函数都可以在JS代码中访问,而Java对象继承关系会导致很多Public的函数都可以在JS中访问,其中一个重要的函数就是  getClass()。然后JS可以通过反射来访问其他一些内容。通过引入 @JavascriptInterface注解,则在JS中只能访问 @JavascriptInterface注解的函数。这样就可以增强安全性。如果你开发的应用android:targetSdkVersion数值为17或者大于17记得添加 @JavascriptInterface  注解。

而且,在Android 4.2.2中,目标API级别为17的应用程序会将每个ContentProvider的export属性默认设置为false,从而可以最终减小应用程序的默认攻击面。此次的更新还可以减小针对root权限升级来带来的潜在攻击面,因为installd守护进程不会再以root用户的方式运行。

你可能感兴趣的:(Android 4.2一些变动)