admin 发表于 2011-9-17 18:05:46

PhoneGap利用childbrowser实现一些native功能

childbrowser是phonegap比较实用的一个插件,它提供了一个showWebPage方法可以在程序内打开一个页面。不过android版和iphone版却有比较大的不同。不谈UI部分。iphone版的支持很多回调事件,而android版的的showWebPage支持是否利用系统浏览器打开页面。一看android的实现就是用Indent偷懒了,不过正好将计就计,利用Indent特性做一些native的功能,比如打电话,显示联系人,地图定位等等…<!DOCTYPE HTML>
<html>
    <head>
        <script type="text/javascript" charset="utf-8" src="lib/phonegap-1.0.0.js"></script>
        <script type="text/javascript" charset="utf-8" src="lib/childbrowser.js"></script>
        
        <script type="text/javascript" charset="UTF-8">
                function clickme(type){
                        try{
                                var uri;
                                switch(type){
                                        case "web": uir = ("http://www.google.com"); break;
                                        case "tel": uir = ("tel:114"); break;
                                        case "contacts": uir = ("content://contacts/people/"); break;
                                        case "peopel": uir = ("contacts://contacts/people/1"); break;
                                        case "geo": uir = ("geo:31.23136,121.47004"); break;
                                        case "file": uir = ("file:///android_asset/www/another.html"); break;
                                        default: throw new Error("Unknown type: " + type);
                                }
                                window.plugins.childBrowser.showWebPage(uir);
                        }catch(ex){
                                alert(ex.message);
                        }
                }
        </script>
        <style type="text/css">
                input{
                        display: block;
                        margin: 20px auto;
                        width: 80%;
                }
        </style>
    </head>
    <body>
            <input type="button" value="web page" onclick="clickme('web');" />
            <input type="button" value="tel" onclick="clickme('tel');" />
            <input type="button" value="contacts list" onclick="clickme('contacts');" />
            <input type="button" value="contacts peopel" onclick="clickme('peopel');" />
            <input type="button" value="geo" onclick="clickme('geo');" />
            <input type="button" value="mp3" onclick="clickme('file');" />
    </body>
</html>

页: [1]
查看完整版本: PhoneGap利用childbrowser实现一些native功能