首页 > 代码库 > Phonegap获取程序版本插件开发

Phonegap获取程序版本插件开发

用语phonegap开发的android程序版本号获取

[1].[代码] [其他]代码 跳至 [1]

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
第一步:新增一个插件文件(VodePlugin.java),代码如下:
 
package com.adobe.phonegap;//这个是我的工程包名
import org.apache.cordova.api.CallbackContext;
import org.apache.cordova.api.CordovaInterface;
import org.apache.cordova.api.CordovaPlugin;
import org.json.JSONArray;
import org.json.JSONException;
 
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.content.pm.PackageManager.NameNotFoundException;
import android.util.Log;
import android.widget.Toast;
public class VodePlugin extends CordovaPlugin {
 @Override
   public boolean execute(String action, JSONArray args, CallbackContext callbackContext) throws JSONException {
       if (action.equals("echo")) {
           String message = args.getString(0);
           this.echo(message, callbackContext);
           return true;
       }
       return false;
   }
 
   private void echo(String message, CallbackContext callbackContext) {
       if (message != null && message.length() > 0) {
           PackageManager manager = this.cordova.getActivity().getPackageManager();
           try {
            PackageInfo info = manager.getPackageInfo(this.cordova.getActivity().getPackageName(), 0);
  message = info.versionName;
  } catch (NameNotFoundException e) {
  // TODO Auto-generated catch block
  e.printStackTrace();
  }
           callbackContext.success(message);
       } else {
           callbackContext.error("Expected one non-empty string argument.");
       }
   }
     
}
第二步:在配置文件里面添加插件(xml文件夹下面的config.xml)
<plugin name="VodePlugin" value=http://www.mamicode.com/"com.adobe.phonegap.VodePlugin"/>
其中com.adobe.phonegap 是我的项目的包名,要修改成自己项目的包名
第三步:在HTML页面调用插件
        document.addEventListener("deviceready", onDeviceReady, false);
        function onDeviceReady() {
            cordova.exec(function (result) {//调用插件成功
                //result即使获取得到的版本信息
            }, function (error) {//调用插件失败
                 
            }, "VodePlugin", "echo", ["版本信息", 200]);
        }

Phonegap获取程序版本插件开发