`
zhanghan
  • 浏览: 192599 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

android开发 phonegap插件开发中ProgressDialog的使用

阅读更多

整体来说,android开发编写java代码比较变态。

在使用phonegap开发插件是则会让你看到更变态的用法。

 

直接贴代码吧,为走弯路的朋友借鉴。

代码参考phonegap源码Notification.java类

 

 

package com.p3p.android.plugin;

import org.json.JSONArray;
import org.json.JSONException;

import android.app.ProgressDialog;

import com.phonegap.api.PhonegapActivity;
import com.phonegap.api.Plugin;
import com.phonegap.api.PluginResult;

public class HelloWord extends Plugin {
 public ProgressDialog progressDialog = null;

 @SuppressWarnings("static-access")
 @Override
 public PluginResult execute(String arg0, JSONArray arg1, String arg2) {
  // TODO Auto-generated method stub
  PluginResult.Status status = PluginResult.Status.OK;
  String result = "";
  try {

   if (this.progressDialog != null) {
    this.progressDialog.dismiss();
    this.progressDialog = null;
   }
   final HelloWord __this = this;
   final PhonegapActivity ctx = this.ctx;
   Runnable runnable = new Runnable() {
    public void run() {
     __this.progressDialog = new ProgressDialog(ctx);
     __this.progressDialog
       .setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
     __this.progressDialog.setTitle("提示信息");
     __this.progressDialog.setMessage("文件正在下载中,请稍微...");
     __this.progressDialog.setCancelable(false);
     //__this.progressDialog.setCancelable(true);
     __this.progressDialog.setMax(100);
     __this.progressDialog.setProgress(0);
     /*
      * __this.progressDialog .setOnCancelListener(new
      * DialogInterface.OnCancelListener() { public void
      * onCancel(DialogInterface dialog) { __this.progressDialog
      * = null; } });
      */
     __this.progressDialog.show();
    }
   };

   this.ctx.runOnUiThread(runnable);
   Thread.currentThread().sleep(2000l);
   this.progressDialog.setProgress(80);
   Thread.currentThread().sleep(3000l);
   this.progressDialog.setProgress(95);
   Thread.currentThread().sleep(1000l);
   this.progressDialog.setProgress(100);
   Thread.currentThread().sleep(1000l);
   this.progressDialog.dismiss();
    result = "result from my plugin:" + arg1.getString(0);
  } catch (JSONException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  } catch (InterruptedException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  return new PluginResult(status, result);

 }

}

 

分享到:
评论
1 楼 0759cxz 2012-05-15  
请问怎么调用呢?

相关推荐

    android与phonegap混合开发之相互跳转

    在移动应用开发领域,PhoneGap和Android是两种广泛使用的平台。PhoneGap是一种基于HTML5、CSS3和JavaScript的跨平台框架,它允许开发者使用Web技术创建原生移动应用。而Android则是Google主导的开源操作系统,提供了...

    android+Phonegap开发环境搭建

    总之,搭建Android+PhoneGap开发环境涉及安装JDK、Android Studio、Node.js和PhoneGap CLI,配置Android SDK,以及创建和运行第一个PhoneGap项目。掌握这个过程后,开发者就可以利用Web技术开发出能在Android平台上...

    phonegap开发插件合集

    这个"phonegap开发插件合集"是一个包含了多种PhoneGap插件的资源包,覆盖了Android和iOS等多个平台,为开发者提供更丰富的功能扩展。 首先,我们来看看"短信收发插件"。在移动应用中,发送和接收短信是一项常见的...

    android之PhoneGap入门实例

    PhoneGap的核心理念是通过Web技术实现与移动设备硬件的交互,让开发者能够利用熟悉的Web开发技能开发出能在iOS、Android、Windows Phone等多平台运行的应用。 在"android之PhoneGap入门实例"中,我们首先需要了解...

    phonegap在线更新插件(android)

    本插件专注于PhoneGap在Android平台上的在线更新功能,旨在解决一个特定的问题:即在Android 7.0及以上版本中,通过下载安装APK更新时可能出现的应用闪退现象。 在Android系统中,特别是从7.0版开始,谷歌引入了更...

    android PhoneGap 自定义插件

    6. 测试与调试:使用PhoneGap CLI或者集成开发环境(如Android Studio)编译并运行项目,通过模拟器或真实设备进行测试。可以利用Logcat查看日志,以便调试Android端的代码;对于JavaScript,可以使用浏览器的开发者...

    phonegap插件包Android版本

    在这个"phonegap插件包Android版本"中,我们主要关注的是如何在Android平台上利用PhoneGap开发应用,并集成特定的插件。 1. **PhoneGap框架介绍**:PhoneGap基于Apache Cordova,提供了一个统一的API接口,使得...

    android PhoneGap websocket 插件

    本篇将详细介绍如何在Android的PhoneGap项目中集成WebSocket插件。 首先,我们需要理解WebSocket的基本概念。WebSocket协议是HTTP的升级版,它在建立连接后保持持久化连接,使得数据可以在服务器和客户端之间双向...

    android+phonegap+jquery mobile

    这个项目标题揭示了一个使用三种技术栈构建的移动应用程序:Android、PhoneGap和jQuery Mobile。Android是Google主导的开源操作系统,主要用于智能手机和平板电脑;PhoneGap是一个开放源代码框架,允许开发者使用...

    NFC+Arduino、Android与PhoneGap近场通信

    ■ 用PhoneGap和它的NFC插件写Android上的NFC应用程序用例 ■ 深入了解NDEF结构:测试已有的写标签程序,然后写自己的标签程序 ■ 用PhoneGap事件监听器来监听和过滤NDEF消息 ■ 写一个完整的Android应用程序来控制...

    PhoneGap android的Toast插件

    Android的Toast插件是PhoneGap生态中的一个重要组件,用于在Android设备上显示短暂的通知信息,类似于原生Android开发中的Toast功能。 首先,`ToastPlugin.java`是这个插件的核心Java代码,它负责与PhoneGap的...

    自定义plugin插件实现phonegap与Android交互

    在"自定义plugin插件实现phonegap与Android交互"这个主题中,我们主要关注的是如何通过编写自定义插件来打通JavaScript和Android之间的通信壁垒。在PhoneGap中,Plugin是连接Web层和Native层的桥梁,它们是用Java...

    最新phonegap插件集合

    在实际开发中,开发者可以根据项目需求选择合适的插件,并通过PhoneGap Build或Cordova CLI将其添加到项目中。安装插件时,需要遵循插件文档中的说明,确保依赖库和配置正确无误。同时,了解每个插件的API使用方法和...

    Phonegap在安卓平台上的插件开发

    在"Phonegap在安卓平台上的插件开发"这个主题中,我们关注的是如何在PhoneGap应用中创建自定义的插件,以便将前端HTML与Android的原生代码连接起来。具体来说,这个例子涉及到将一个字符串从前端传输到Android的原生...

    使用phonegap插件启动另一个Android Activity

    在本教程中,我们将深入探讨如何使用 PhoneGap 插件启动另一个 Android Activity。 首先,确保你已经准备好了 PhoneGap 的最新框架包,包括 `phonegap-x.x.x.jar`(添加到项目的 `libs` 目录)、`phonegap-x.x.x.js...

    PhoneGap常用插件

    PhoneGap的吸引力在于它提供了一个统一的开发环境,使得开发者可以使用他们熟悉的Web技术来开发适用于iOS、Android、Windows Phone等多个平台的应用。 在"PhoneGap常用插件"这个主题中,我们将探讨PhoneGap生态系统...

    phonegap开发安卓

    - 使用Chrome开发者工具的Remote Debugging功能,可以在浏览器中实时查看和调试运行在Android设备上的PhoneGap应用。 - 使用PhoneGap Build服务,可以远程编译和分发应用到不同平台,而无需在每个平台上单独构建。...

    Android PhoneGap开发简结

    在本文中,我们将探讨Android PhoneGap开发的关键知识点,以及在实际应用中可能遇到的问题和解决策略。PhoneGap是一个开放源代码框架,它允许开发者使用HTML、CSS和JavaScript来构建跨平台的移动应用程序,包括...

    混合开发模式-利用HTML5开发无线应用_Android-PhoneGap安装及调

    在Android平台上使用PhoneGap,首先需要安装一系列的开发工具。包括Eclipse IDE,Java Development Kit (JDK),以及Android Software Development Kit (SDK)。Eclipse是Android应用开发的主要IDE,而JDK是运行...

    Android和PhoneGap打包本地网站和在线网站

    在Android和PhoneGap中访问相机功能,可以使用PhoneGap的Camera API。这个API允许应用启动设备的摄像头,拍摄照片或者选择已有的图片。使用方法如下: 1. 调用`navigator.camera.getPicture()`函数,传入回调函数来...

Global site tag (gtag.js) - Google Analytics