1.准备好phonegap的开发环境 .不清楚的话可以看这个资料
我这用的是phonegap2.5的版本
2.在Eclipse里,在你的项目src目录下 建立一个CheckActive.java
代码如下
package 这里是你的包名;
import org.apache.cordova.api.CallbackContext;
import org.apache.cordova.api.CordovaPlugin;
import org.json.JSONArray;
import org.json.JSONException;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager.NameNotFoundException;
public class CheckActive extends CordovaPlugin {
@Override
public boolean execute(String action, JSONArray args, CallbackContext callbackContext) throws JSONException {
if (action.equals("CheckActive")) {
//args为 js传递过来的参数集合 这里为我传递过来的要检查的软件的包名例如 com.aa.xx
String appname=(String) args.get(0);
PackageInfo packageInfo;
try {
packageInfo =cordova.getActivity().getPackageManager().getPackageInfo(appname, 0);
} catch (NameNotFoundException e) {
packageInfo = null;
e.printStackTrace();
}
if(packageInfo ==null){
//回掉参数给js
callbackContext.success("false");
}else{
callbackContext.success("true");
}
return true;
}
return false;
}
}
3. 在res/xml/config.xml里进行配置,在<plugins></plugins>里加入 <plugin name="CheckActive" value="你的包名.CheckActive" />
以上java部分配置完毕.
=================================================================================
因为webapp的主要代码是在assets\www目录下.接下来的操作均在www目录下操作
js部分
建立一个js文件 命名为checkative.js 文件位置为assets\www\js\inc
代码如下:
//会员页 是否安装了会员的软件的判断函数,以及安装了就跳转到软件
var CheckActive = function() {};
CheckActive.show = function(appname,imgid,appurl) {</p><p> return cordova.exec(function(winParam) {
if(winParam=="true"){
//已经安装图标变成"进入app".同时图标的点击事件变成 进入到此app。 goactive为另一个插件。appname参数为包名
$("#"+imgid).attr("src","images/member_app.png");
$("#"+imgid).click( function () { GoActive.show(appname); });
}
else{
//没有安装图标变成"下载".同时图标的点击事件变成 进入到此app的下载页面 appurl为下载的手机页面。
$("#"+imgid).attr("src","images/member_install_app.png");
$("#"+imgid).click( function () { navigator.app.loadUrl(appurl,{ openExternal:true }); });
}
$("#"+imgid).show();
}, function(error) {}, "CheckActive",
"CheckActive", [appname]);
};</p><p> </p><p>//打开某个app</p><p>var GoActive = function() {};
GoActive.show = function(appname) {</p><p>
return cordova.exec(function(winParam) {}, function(error) {}, "GoActive",
"GoActive", [appname]);
};
Goactive.java为进入打开某个app的插件,参数为app的包名,配置如checkative.java.代码如下
package 你的包名;
import org.apache.cordova.api.CallbackContext;
import org.apache.cordova.api.CordovaPlugin;
import org.json.JSONArray;
import org.json.JSONException;
import android.content.Intent;
public class GoActive extends CordovaPlugin {
@Override
public boolean execute(String action, JSONArray args, CallbackContext callbackContext) throws JSONException {
if (action.equals("GoActive")) {
String appname=(String) args.get(0);
Intent intent = cordova.getActivity().getPackageManager().getLaunchIntentForPackage(appname);
//这里注意,获取上下文用cordova
cordova.getActivity().startActivity(intent);
return true;
}
return false;
}
}
最后在html页面里.先包含checkative.js.在页面尾部加入js如下
<script>
//判断corvoda.js是否加载完毕.
document.addEventListener("deviceready", checknetworkIndex, false);
funciton checknetworkIndex(){
//包名,图片名称,下载地址 后两项可自己更改,只需要包名
CheckActive.show("com.aa.cc","btimg","http://app.aa.com/");
}
</script>
分享到:
相关推荐
cordova扫码插件phonegap-plugin-barcodescanner,修复了在ios10上面的内存泄漏导致的闪退bug
phonegap-phonegap-1.0.0-0-g80cc6dd.zip
phonegap-phonegap-1.8.1-0-gce32a3f.zip
PhoneGap-TestApp-源码.rar
phoneGap win桌面应用,由于在官网极度难以下载,总心失败告终,所以在此共享下。
最新版本的phonegap-2.9.1是没有cordova-2.9.1.jar的,这里打包好给大家。
Phonegap LocalNotification 安卓 消息推送
phonegap+android--配置教程_files
PhoneGap 1.6.0:: Prerequisite Software PhoneGap requires you have the following software installed: 1. Eclipse Integrated Design Environment (IDE), a program to write code and manage software ...
在Android平台下搭建PhoneGap开发环境--用HTML5开发游戏[参考].pdf
phonegap-bluetooth-plugin, 用于PhoneGap版本 2.6.0 的蓝牙插件 BluetoothPlugin用于 PhoneGap ( Android )的蓝牙插件。 测试版本 2.6.0和 3.0.0.笔记插件要求 Android API版本 15 ( Ice Cream Sandwich ) 正常工作...
sencha-touch + cordova(PhoneGap)使用adt-eclipse打包实例
PhoneGap是一个用基于HTML,CSS和JavaScript的,创建移动跨平台移动应用程序的快速开发平台。
phoneGAP就是Cordova,据说执行起来比网页快, Android, ios通吃
使用PhoneGap进行移动端开发,使用了HTML5,CSS,javascript,jquery等技术,这是一个初级入门教程
stencil-core.zip,模板是一个简单的页面呈现层
pushwoosh-phonegap-plugin, Pushwoosh PhoneGap构建插件 Cordova Pushwoosh推送通知插件 通过Pushwoosh为 cordova/phonegap跨平台推送通知 Cordova使用 npm ( 需要 cordova 7.0 ):cordova
phonegap开发插件包,各个平台的都有,像什么短信收发插件,蓝牙控制插件等等,具体的看文件包吧