如何使用Cordova访问android中的通话记录?

时间:2016-02-08 19:39:35

标签: javascript android angularjs cordova cordova-plugins

我想使用Cordova访问最近的通话记录,但没有官方插件,有些人为https://github.com/dalyc/Cordova-CallLog-Plugin制作了一个自定义插件是我唯一的希望,但问题是这个插件不再它的创建者支持它,并在他的例子中使用AngularJS。我做了我的搜索工作,发现人们试图使用这个插件来使用javascript,但他们没有工作的解决方案。正如作者在此提到的https://github.com/dalyc/Cordova-CallLog-Plugin/issues/4,有3个函数可以使用javascript。

window.plugins.calllog.list : get recent calls - takes a day limit e.g 7 is go back a week
window.plugins.calllog.show : show contact for specified phone number
window.plugins.calllog.contact : get contact details for specified phone number

我尝试了每一个并且显然window.plugins.calllog.show工作正常,它显示特定号码的联系人。但 window.plugins.calllog.list 对我没有用,它返回“未定义”。需要帮助。提前谢谢。

我的 index.html 包含

<button id="call_log" onclick="loadLogs();">call log</button>

我的 app.js 包含

    //calllog
    function loadLogs() {

        if(window.plugins.calllog == "undefined"){
               alert("Doesn't works");
           }
        else
           {
                alert("works");
                window.plugins.calllog.show('12345'); 
                //this code is working and opening list of contacts having these "12345" in their phonenumber

                var list = window.plugins.calllog.list('7');
                alert(list[0]);
            }

    }
  

未捕获的TypeError:无法读取未定义的属性“0”

1 个答案:

答案 0 :(得分:2)

这是我制作的插件

https://www.npmjs.com/package/callsplugin

你基本上必须写命令

cordova plugin add callsplugin

并按照您在项目网站中找到的说明进行操作