- 浏览: 17855 次
- 性别:
- 来自: 南京
最新评论
文章列表
两个月前发了两篇有关监听自己是否被卸载和卸载反馈功能实现的博客,第二版的地址如下:http://www.cnblogs.com/zealotrouge/p/3159772.html,感谢@whiletrue_童鞋发现了我的代码在4.2.2系统上无法实现卸载反馈,经过调试,有了问题的解决 ...
前面讲过:移动端与PHP服务端接口通信流程设计(基础版)
对于 api_token 的校验,其安全性还可再增强:
增强地方一:
再增加2张表,一个接口表,一个授权表,设计参考如下:
接口表
字段名 字段类型 注释
api_id int 接口ID
api_name varchar(120) 接口名,以"/"作为分割线,如 blog/Index/addBlog
api_domain varchar(256) 所属领域
is_enabled tinyi ...
- 2014-11-21 14:37
- 浏览 593
- 评论(0)
针对
--->非开放性平台
--->公司内部产品
接口特点汇总:
1、因为是非开放性的,所以所有的接口都是封闭的,只对公司内部的产品有效;
2、因为是非开放性的,所以OAuth那套协议是行不通的,因为没有中间用户的授权过程;
3、有点接口需要用户登录才能访问;
4、有点接口不需要用户登录就可访问;
针对以上特点,移动端与服务端的通信就需要2把钥匙,即2个token。
第一个token是针对接口的(api_token);
第二个token是针对用户的(user_token);
先说第一个token(api_token)
它的职责是保持接口 ...
- 2014-11-21 14:19
- 浏览 670
- 评论(0)
前一段时间做公司的项目,涉及到WebView与JS之间的通信,于是在网上查了点资料研究了一下下。
一、WebView与JS交互
1.JS调用本地方法
这个功能的实现还是比较容易的。直接调用WebView的该方法就可以添加接口了,不过先要启动交互
// 启用javascript mWebView.getSettings().setJavaScriptEnabled(true);// 添加接口public void addJavascriptInterface (Object object, String name)
Object是JS调用本地的类的对象,name是对象 ...
安卓webview下
html5 的 video 设置autoplay 属性
或在document ready中使用play方法
都不能使它自动播放
只能用webview的onPageFinished方法来解决此问题,代码如下:
复制代码 代码如下:
mPlayer.setWebViewClient(new WebViewClient() {
// autoplay when finished loading via javascript injection
public void onPageFinished(WebView view, String url) { ...
跨域的N种形式:
1.直接用jquery中$.getJSON进行跨域提交
优点:有返回值,可直接跨域;
缺点:数据量小;
提交方式:仅get (无$.postJSON)
[javascript] view plaincopy
01. $.getJSON("http://www.sendnet.cn/?callback=?" , { UserId: 1001 },
02.nction (data) {
03.alert(data.info);
04.;
[javascript ...
- 2014-10-22 20:40
- 浏览 1250
- 评论(0)
(1)直接使用{}创建对象
var Cat = {
name: "大毛",
makeSound: function(){ alert("喵喵喵"); }
};
alert(Cat.name);
对于直接使用{}创建对象..这种情况在创建极少数对象的情况下且不需要封装的情况下使用。{}可以算做一个单例(单例模式);
(2)Object.create()法
对直接使用{}的改进:
为了解决"构造函数法"的缺点,更方便地生成对象,Javascript的国际标准ECMAScr ...
在Android开发中,一个工程对应一个AndroidManifest.xml文件,这个文件中包含有该项目的一些设置,如权限、SDk版Activity、Service信息等。一般而言,这个文件中会有且仅有一个application节点,这个节点表示这是一个应用程序,不管它下面还有多少子节点如Activity、Service等等。形象的说,就是这个项目生成的apk安装到Android设备后,应用程序列表中会出现一个ICON,这个ICON就是这个程序的执行入口了。
但是,某些情况下,我们需要为我们的apk设置多个执行入口,也就是安装后在应用程序列表中出现多个ICON图标,各个ICON是APP不同模 ...
在Android中启动JAVA程序其实有很多种方式,现总结如下
一、在Android应用程序中发送Intent启动Android应用程序
这个方式最简单,最常用。在此不在累述。关于Intent的更多内容请阅读《Intent技术简介》
二、在shell控制台通过am命令 ...
转载自:http://intrepidusgroup.com/insight/2010/09/android-root-source-code-looking-at-the-c-skills/
Root Andoid现在主要是依靠两个漏洞:init进程的udev和adbd进程的setuid,下面是详细描述。之前的文章提到的rageagainstthecage这个程序利用的是setuid这个漏洞。
这两个漏洞的攻击程序源码在这里:/Files/super119/RageAgainstTheCage.zip
This is a bit of a follow up to our p ...
这个漏洞网上有很多资料,我也来总结一下。
首先,先来大致了解下Root Android系统的原理。Root的本质就是修改替换/system/bin/su这个文件。这个文件就跟桌面linux的su命令一样,提供切换到root用户的功能。但是系统自带的su文件( ...
在应用开发中,经常用到ListView去加载数据,加载图片和文字是比较常见的,文字还好,图片从网络请求加载速度比较慢,所以需要把图片的加载放到另一个线程中去执行,执行完了再更新UI线程。以下列出一个我在项目中使用到的异步加载图片的解决方案,代码没有上全,给出核心部分。
大致思路是这样:
1.利用软引用来缓存图片Bitmap,用图片的URL作为缓存查找的Key;
2.设两级缓存,一级是SoftReference,二级是本地SD卡;
3.如果两级缓存都没取到图片,则从服务器获取,并加入缓存;
4.加载完后通过回调接口通知UI更新;
以下是异步加载的关键代码,其中一 ...
例子一:
sublayout.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height=&quo ...
最近做了一个Hibernate与MyBatis的对比总结,希望大家指出不对之处。
第一章 Hibernate与MyBatis
Hibernate 是当前最流行的O/R mapping框架,它出身于sf.net,现在已经成为Jboss的一部分。 Mybatis 是另外一种优秀的O/R mapping框架。目前属 ...
Android系统设计中存在设计模式分析
- 博客分类:
- android
1、 开闭(OCP)
简介:要扩展,不要修改。比如我对外提供了一个接口。现在想更新的话,不要直接修改这个接口,而是提供另外一个接口,然后通知大家在什么时间之前切换到这个新接口。
举例:这个设计模式无处不在,Android每次升级都会提供一些新的API,有一些较老的API就会置为deprecated。如从level 1就支持的Service.onStart,在level 5中,已经被Service.Service.onStartCommand替换,但Service.onStart依然保留没有去掉,以便继续提供过渡期的支持。
2、 合成复用
简介:少用继承(耦合性比较强),多用合成关系(灵 ...