phonegap2.9.1中自定义插件实现分享
我也刚开始自学phonegap 有不那个的地方 大虾们勿喷啊!
让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:申请域名、虚拟空间、营销软件、网站建设、钢城网站维护、网站推广。
直接开始步骤:
1.首先创建一个Share.java文件直接上代码
import org.apache.cordova.api.CallbackContext;
import org.apache.cordova.api.CordovaPlugin;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import android.content.Intent;
public class Share extends CordovaPlugin {
@Override
public boolean execute(String action, JSONArray args,CallbackContext callbackContext) throws JSONException {
if(action.equals("fenxiang")){
JSONObject jo = args.getJSONObject(0);
fenxiang(jo.getString("subject"), jo.getString("text"));
callbackContext.success();
return true;
}else{
callbackContext.error("failed error");
return false;
}
}
private void fenxiang(String subject, String text) {
Intent sendIntent = new Intent(Intent.ACTION_SEND);
sendIntent.setType("text/plain");
sendIntent.putExtra(Intent.EXTRA_SUBJECT, subject);
sendIntent.putExtra(Intent.EXTRA_TEXT, text);
sendIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
this.cordova.startActivityForResult(this, sendIntent, 0);
}
}
2.在config.xml中配置
3.在cordova.js中添加定义
//Share.js 分享
define("cordova/plugin/share", function(require, exports, module) {
var exec = require('cordova/exec');
var modulemapper = require('cordova/modulemapper');
var share = {
fenxiang:function(content,success,fali) {
exec(success, fali, "Share", "fenxiang", [content]);
}
};
module.exports = share;
});
这个在cordova2.9.1中必须要
define("cordova/plugin/share/symbols", function(require, exports, module) {
var modulemapper = require('cordova/modulemapper');
modulemapper.clobbers('cordova/plugin/share', 'share');
});
4.写一个share.js文件
里面就写这个
function fenxiang(){
//alert(share.fenxiang);
share.fenxiang({subject:'分享',text:'I like my love'},
function(){
//alert('分享成功');
},function(){
//alert('分享失败');
});
}
5.编写index.html 其中share.js放在js文件夹下 如果你是在www文件夹下
就这样写src=“share.js”