Phonegap Webview - 仅显示Android的联系人列表

时间:2011-12-28 15:47:39

标签: android cordova

我已经在Android环境中设置并安装了Phonegap和Android SDK。一切似乎工作正常,除非我安装额外的phonegap插件[https://github.com/phonegap/phonegap-plugins/tree/master/Android/ContactView],目的是查看我的联系人列表。


以下是说明:

https://github.com/phonegap/phonegap-plugins/tree/master/Android/ContactView


现在如何将列表拉入assets / www

下的索引文件中

请帮助


这是我的索引文件:

<!DOCTYPE HTML>
<html>
  <head>
    <meta name="viewport" content="width=320; user-scalable=no" />
    <meta http-equiv="Content-type" content="text/html; charset=utf-8">
    <title>PhoneGap Demo With JQuery Mobile</title>
      <link rel="stylesheet" href="jquery.mobile/jquery.mobile-1.0.css" type="text/css"/>
      <link rel="stylesheet" href="pgandjqm-style-override.css" type="text/css"/>
      <script type="text/javascript" charset="utf-8" src="jquery.mobile/jquery-1.6.4.min"></script>
      <script type="text/javascript" charset="utf-8" src="phonegap-1.3.0.js"></script>
      <script type="text/javascript" charset="utf-8" src="jquery.mobile/jquery.mobile-1.0.js"></script>
      <script type="text/javascript" charset="utf-8" src="main.js"></script>
      <script type="text/javascript" charset="utf-8" src="calllog.js"></script>

    </head>
  <body onload="init();">
    <div data-role="page" data-theme="b">
    <div data-role="header">
        <h1>Welcome to Stellar</h1> 
    </div>
    <div data-role="content"><script type="text/javascript"> window.plugins.CallLog.list('all', successCallBack, failCallBack);</script></div>
    <div data-role="content"><a href="tel:411" data-role="button">Call 411</a>
    <div data-role="button" onclick="window.plugins.CallLog.list('all', successCallBack, failCallBack);">Beep</div>
    <div data-role="button" onclick="beep();">Beep</div>

    <div id="viewport" class="viewport" style="display:none;">       
      <img style="width:60px;height:60px" id="test_img" src="" />
    </div> 
    </div><!-- end jqm content -->
    <div data-role="footer">
        <h1>Thanks for being around</h1>
    </div>

  </body>
</html>

1 个答案:

答案 0 :(得分:0)

下面的文件应该可以使用。顺便说一句,我不确定你的calllog.js中有什么,但是肯定需要在index.html中有一个ContactView.js。请参阅以下文件和正在运行的完整应用程序的屏幕截图:

的index.html

<!DOCTYPE HTML>
<html>
  <head>
    <meta name="viewport" content="width=320; user-scalable=no" />
    <meta http-equiv="Content-type" content="text/html; charset=utf-8">
    <title>PhoneGap Demo With JQuery Mobile</title>
      <link rel="stylesheet" href="jquery.mobile/jquery.mobile-1.0.css" type="text/css"/>
      <link rel="stylesheet" href="pgandjqm-style-override.css" type="text/css"/>
      <script type="text/javascript" charset="utf-8" src="jquery.mobile/jquery-1.6.4.min"></script>
      <script type="text/javascript" charset="utf-8" src="phonegap-1.3.0.js"></script>
      <script type="text/javascript" charset="utf-8" src="jquery.mobile/jquery.mobile-1.0.js"></script>
      <script type="text/javascript" charset="utf-8" src="main.js"></script>
      <script type="text/javascript" charset="utf-8" src="ContactView.js"></script>
      <script type="text/javascript" charset="utf-8"> 
      var successCallBack = function(args) {
        alert (JSON.stringify(args));
        };
      var failCallBack = function(args) {
        alert (JSON.stringify(args));
        };
      </script>

    </head>
  <body onload="init();">
    <div data-role="page" data-theme="b">
    <div data-role="header">
        <h1>Welcome to Stellar</h1> 
    </div>

    <div data-role="content"><a href="tel:411" data-role="button">Call 411</a>
    <div data-role="button" onclick="window.plugins.ContactView.show('all', successCallBack, failCallBack);">Beep</div>
    <div data-role="button" onclick="beep();">Beep</div>

    <div id="viewport" class="viewport" style="display:none;">       
      <img style="width:60px;height:60px" id="test_img" src="" />
    </div> 
    </div><!-- end jqm content -->
    <div data-role="footer">
        <h1>Thanks for being around</h1>
    </div>

  </body>
</html>

ContactView.js

var ContactView = function() {};

ContactView.prototype.show = function(cmd, successCallback, failCallback) {

    function success(args) {
        successCallback(args);
    }

    function fail(args) {
        failCallback(args);
    }

    return PhoneGap.exec(function(args) {
        success(args);
    }, function(args) {
        fail(args);
    }, 'ContactView', '', []);
};

/**
 * Load ChildBrowser
 */
PhoneGap.addConstructor(function() {
    PhoneGap.addPlugin("ContactView", new ContactView());
});

另外,res / xml / plugins.xml需要添加以下行:

  <plugin name="ContactView" value="com.rearden.ContactView"/>

接下来是显示目录结构,更改的文件和正在运行的应用程序的屏幕截图:

Screen shot of running app