Android WebView与JavaScript交互

1.安卓执行JS代码 webView.loadUrl("javascript:(function(){这里是需要执行JS代码})()"); 注意最后的()为js闭包,一定要书写 2.JS调用安卓代码 js调用安卓代码采用addJavascriptInterface方法,用下如下 切记:在API7后要用@JavascriptInterface注解本地的js方法,不然会提示找不到方法 package com.apkfuns.androidjsdemo; import android.app.AlertDialog; import android.os.Bundle; import android.util.Log; import android.view.Menu; import android.view.MenuItem; import android.webkit.JavascriptInterface; import android.webkit.JsResult;

阅读全文...

Web Console: Uncaught TypeError: Object [object Object] has no method

出现问题的原因是因为Android4.2及以上版本对于js的支持方式有改变导致 解决办法在这里 http://blog.csdn.net/zgjxwl/article/details/9627685 其实就是加一句注释 webview.getSetting().setJavaScriptEnable(true); class JsObject { @JavascriptInterface public String toString() { return "injectedObject"; } } webView.addJavascriptInterface(new JsObject(), "injectedObject");

阅读全文...

gradle 修改打包后的apk的名字

在app的module里的build.gradle文件中,在android { …}里面加上这样一段代码,即可修改生成的apk的文件名。 android.applicationVariants.all { variant -> def file = variant.outputs[0].outputFile variant.outputs[0].outputFile = new File(file.parent, file.name.replace(".apk", "-" + defaultConfig.versionName + ".apk")) }

阅读全文...

Android SDK Manage国内无法更新解决方案

* 方案一:* 改hosts文件 203.208.46.200 dl-ssl.google.com 方案二: 在Android SDK Manager Setting 窗口设置HTTP Proxy server和HTTP Proxy Port这个2个参数,分别设置为: HTTP Proxy server:mirrors.neusoft.edu.cn HTTP Proxy Por:80 然后把下面的Force ..http://…sources to be fetched using http://..选项打钩,close Android SDK Manager Setting,然后在重新启动Android SDK Manager Setting 方案三:

阅读全文...

[笔记]java配置环境变量

java环境变量设置 path=%JAVAHOME%/bin JAVAHOME=C:/Java/jdk1.6.001 CLASSPATH=.;%JAVAHOME%/lib/dt.jar;%JAVA_HOME%/lib/tools.jar 测试是否配置成功: 在cmd下分别输入java、javac、java -version能正常显示配置成功 *android环境变量设置 * ANDROID_SDK_HOME=安卓sdk文件夹目录 path=%ANDROIDSDKHOME%\platform-tools;%ANDROIDSDKHOME%\tools 在cmd下输入adb能显示配置成功

阅读全文...

Gradle实现的两种简单的多渠道打包方法

本来计划今天发Android的官方技术文档的翻译——《Gradle插件用户指南》的第五章的,不过由于昨天晚上没译完,还差几段落,所以只好推后了。 今天就说一下使用Gradle进行类似友盟这样的多渠道打包的方法吧。 本文原创,转载请注意在CSDN上的出处: http://blog.csdn.net/maosidiaoxian/article/details/42000913 目前我掌握的方法有两种,都非常简单,用的都是Gradle Android插件里的productFlavors。 以友盟的多渠道打包为例,假设我们需要打包出如下渠道:UMENG, WANDOUJIA, YINGYONGBAO。 第一种方法,是需要创建文件的。 我们在写完我们的代码之后,在app/src下面,分别创建和main同级目录的文件夹umeng, wandoujia, yingyongbao,这三个文件夹里面都各只有一个AndroidManifest.xml文件,文件只需要如下: 注意,上面的value的值要和你的渠道名所对应。比如wandoujia里面要对应为你豌豆荚上的渠道名(如WANDOUJAI)。 然后在你的build.gradle的android{}节点里面,添加productFlavors节点,代码如下: android { // 这里是你的其他配置 productFlavors{ umeng{

阅读全文...

百度实习生入职题目

欢迎来到百度,我是你的临时 mentor。介于你不能提前实习,由我为你布置一些Android相关的学习任务,方便你报道后可以更快投入工作和学习。学习作业分为两部分,理论 与 实践Demo题目。 **1.1 首先学习MVC、Reactor、Delegate等设计模式。要求理解概念并能运用到实际开发****1.2 其次学习Android界面开发:绘图、布局、触摸事件、动画(Animator);网络:TCP/IP、HTTP;多线程开发,等技术。**- 界面+动画方面,推荐通过[developer.android.com](http://developer.android.com/)的tutorial、best practice 学习。要求了解概念和基本流程,如触摸事件的处理流程。 - 网络和多线程方面,请研究Robospice这个第三方库。

阅读全文...

Material Design 风格的设置页面

转自:http://drakeet.me/material-design-settings-activity 设置页面是 Android 开发 APP 几乎必须的一个页面。 Google 在发布 Material Design 的一些兼容包的时候,一直没有解决的一个大问题就是设置页面。让![device-2015-02-20-132630](http://drakeet.me/wp-content/uploads/2015/02/device-2015-02-20-132630.png)人很蛋疼的是,如果你继承 PreferenceActivity 来做设置页面的话,会导致你的这个页面 ActionBar 丢失,完全显示不出来,丑,而且官方貌似一直没有解决,真不知怎么想的。所以一般我们的解决办法就是使用 Activity + Fragment 来保留 ActionBar 又能使用简易的 PreferenceFragment。 但是这里又有一个问题,就是没有 Material Design 化,

阅读全文...

android让视图显示在输入法上面

在manifest中配置 manifest中 在对应的Activity加上android:windowSoftInputMode="stateHidden|adjustResize" 2.在代码中配置 getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFTINPUTSTATEHIDDEN | WindowManager.LayoutParams.SOFTINPUTADJUSTRESIZE);

阅读全文...