H5+

camera

  • Camera模塊管理設(shè)備的攝像頭锅风,可用于拍照酥诽、攝像操作,通過plus.camera獲取攝像頭管理對象皱埠。
function photo(){
  plus.camera.getCamera().captureImage(
    p=>{
      plus.gallery.save(p,s=>console.log("成功",s),se=>console.log("失敗",se));
      plus.io.resolveLocalFileSystemURL(p,entry=>{
        var pa = document.createElement("p");
        pa.innerHTML = `<img width="160" src="${entry.toLocalURL()}"/>`
        picbox.appendChild(pa);
      });
    },
    e=>{},
    {}
  )
}

<p><button onclick="photo()">拍照</button></p>

方法:

對象:

  • Camera: 攝像頭對象
  • CameraOptions: JSON對象肮帐,調(diào)用攝像頭的參數(shù)
  • PopPosition: JSON對象,彈出拍照或攝像界面指示位置

Device

<script type="text/javascript">
    document.addEventListener('plusready', function(){
    //console.log("所有plus api都應(yīng)該在此事件發(fā)生后調(diào)用,否則會出現(xiàn)plus is undefined训枢。")
       uuid.innerHTML = plus.device.uuid;
      osName.innerHTML = plus.os.name;
      vendor.innerHTML = plus.device.vendor;
      net.innerHTML = plus.networkinfo.getCurrentType()===3?'wifi':'其他';
      // 0 - 6  3是wifi 4是2g 5是3g 6是4g
  });
</script>
<h3>信息獲取</h3>
<p>uuid:<span id="uuid"></span></p>
<p>os:<span id="osName"></span></p>
<p>廠商:<span id="vendor"></span></p>
<p>網(wǎng)絡(luò):<span id="net"></span></p>

屬性:

  • imei: 設(shè)備的國際移動設(shè)備身份碼
  • imsi: 設(shè)備的國際移動用戶識別碼
  • model: 設(shè)備的型號
  • vendor: 設(shè)備的生產(chǎn)廠商
  • uuid: 設(shè)備的唯一標(biāo)識

Key

plus.key.addEventListener("backbutton",()=>{
    plus.nativeUI
})

方法:

io

  • IO模塊管理本地文件系統(tǒng)托修,用于對文件系統(tǒng)的目錄瀏覽、文件的讀取恒界、文件的寫入等操作睦刃。通過plus.io可獲取文件系統(tǒng)管理對象。

nativeUI

function showAlert(){
    plus.nativeUI.alert("你好程序員",()=>console.log("用戶點擊"),"原生彈出","確定");
    // 彈出內(nèi)容,回調(diào)函數(shù),標(biāo)題,確定按鈕文字
}
function showConfirm(){
    plus.nativeUI.confirm("你準備好了嗎",e=>console.log("你選擇的是:"+e.index));
    // 確定是0 取消是1
 }
 function showWaiting(){
    var w = plus.nativeUI.showWaiting("客官稍等...");
    setTimeout(()=>plus.nativeUI.closeWaiting(),2500);
 }
 function pickDate(){
    var styles = {};
    styles.title = "請選擇日期:"; // 顯示標(biāo)題
    styles.date = new Date(), styles.date.setFullYear(2018,8,8);// 默認顯示的日期
    styles.minDate = new Date(), styles.minDate.setFullYear(2010,0,1);// 設(shè)置最小可選日期為“2010-01-01”
    styles.maxDate = new Date(), styles.maxDate.setFullYear(2020,11,31);// 設(shè)置最大可選日期為“2020-12-31”

    plus.nativeUI.pickDate(function(e){
        var d = e.date;
        console.log("選擇的日期:"+d.getFullYear()+"-"+(d.getMonth()+1)+"-"+d.getDate());
    },function(e){
        console.log("未選擇的日期"+e.message);
    },styles);
 }

<h3>nativeUI 原生UI</h3>
<p>
  <button onclick="plus.nativeUI.toast('積分+5')">Toast提示</button><br><br>
  <button onclick="showAlert()">Alert 警告</button><br><br>
  <button onclick="showConfirm()">Confirm 確認</button><br><br>
  <button onclick="showWaiting()">加載提示</button><br><br>
  <button onclick="pickDate()">選擇日期</button><br><br>
</p>

方法:

  • actionSheet: 彈出系統(tǒng)選擇按鈕框
  • alert: 彈出系統(tǒng)提示對話框
  • confirm: 彈出系統(tǒng)確認對話框
  • closeWaiting: 關(guān)閉系統(tǒng)等待對話框
  • closeToast: 關(guān)閉自動消失的提示消息
  • previewImage: 預(yù)覽圖片
  • showWaiting: 顯示系統(tǒng)等待對話框
  • pickDate: 彈出系統(tǒng)日期選擇對話框
  • pickTime: 彈出系統(tǒng)時間選擇對話框
  • prompt: 彈出系統(tǒng)輸入對話框
  • toast: 顯示自動消失的提示消息
  • setUIStyle: 設(shè)置原生界面樣式(暗黑模式)

share

function share(){
  window.plusShare({
    title:"神級網(wǎng)站",
    content:"解決程序員99%煩惱",
    // type:'text',
    // pictures:["http://www.xxx.com/source/images/640.jpg"],
    href:"http://www.baidu.com",
    thumbs:["http://www.xxx.com/source/images/640.jpg"] 
    },res=>{plus.nativeUI.toast("分享成功")})
}

<h3>分享</h3>
<p><button onclick="share()">系統(tǒng)分享</button></p>

方法:

uploader

function upload(){
  if(!file){plus.nativeUI.alert("你還沒有選擇文件");return;}
  var url = "http://www.xxx.com/ajax/file.php";
  var task = plus.uploader.createUpload(
    url,
    {method:'POST'},
    (t,status)=>{
      if(status==200){
        console.log("上傳成功");
        var picurl = "http://www.xxx.com"+JSON.parse(t.responseText).pic;
        var p = document.createElement("p");
         p.innerHTML = `<img width="160" src="${picurl}"/>`;
        picbox.appendChild(p);
      }else{
        console.log("上傳失敗"+status);
      }
    }
   )
  task.addFile(file,{key:"file"});
  task.start();
  }

<h3>拍照并上傳</h3>
  <p>
    <button onclick="appendByCamera()">拍照</button> | 
    <button onclick="appendGallery()">相冊選擇</button>
  </p>
  <p id="myfile"></p>
  <p><button onclick="upload()">上傳</button></p>
  <div id="picbox">
    <!-- myfile存放文件名  picbox存放上傳好的圖片 -->
  </div>

方法:

對象:

  • Upload: Upload對象管理一個上傳任務(wù)
  • UploadEvent: 上傳任務(wù)事件類型
  • UploadState: 上傳任務(wù)的狀態(tài)十酣,Number類型
  • UploadOptions: JSON對象涩拙,創(chuàng)建上傳任務(wù)的參數(shù)
  • UploadFileOptions: JSON對象,添加上傳文件的參數(shù)

webview

  • Webview模塊管理應(yīng)用窗口界面耸采,實現(xiàn)多窗口的邏輯控制管理操作兴泥。通過plus.webview可獲取應(yīng)用界面管理對象。
  var _openw = null;
  function openAbout(){
    if(_openw){return;} // 防止快速點擊
    _openw = plus.webview.create('about.html','about',{
      backButtonAutoControl:'close',
      titleNView:{
        autoBackButton:true,
        backgroundColor:"#f30",
        titleText:'關(guān)于我們',
        titleColor:"#fff",
        buttons:[{
          type:'share',
          onclick:()=>alert("分享被點擊了")
        }]
      }
    })
    _openw.addEventListener('close',()=>_openw=null);
    _openw.show('slide-in-right');
  }
  function openPage(url,title,bgcolor){
    plus.navigator.setStatusBarBackground(bgcolor);
    if(_openw){return;}//防止快速點擊虾宇;
    _openw = plus.webview.create(url,title,{
      backButtonAutoControl:'close',//當(dāng)返回的時候關(guān)閉webview(當(dāng)前的窗口)
      // 設(shè)置標(biāo)題
      titleNView:{
        autoBackButton:true,//默認返回按鈕
        backgroundColor:bgcolor, //標(biāo)題欄顏色,
        titleText:title,//標(biāo)題欄文本,
        titleColor:"#fff",
        progress:{color:"#fff"},
        // 設(shè)置進度條的顏色為白色
        buttons:[{
          type:'share',
          onclick:()=>alert("分享被點擊了")
         }]             
      }
    })  
    _openw.addEventListener('close',()=>{_openw=null;plus.navigator.setStatusBarBackground("#f30");});
    //當(dāng)關(guān)閉時候清空當(dāng)前webView
    _openw.show('slide-in-right');
  }

  <h3>頁面切換</h3>
    <p>
     <a href="about.html">a標(biāo)簽切換到about</a>
      <button onclick="openAbout()">webview切換</button><br><br>
      <button onclick="openPage('http://xw.qq.com','新聞','#4c7eff')">新聞</button><br><br>
      <button onclick="openPage('http://m.mi.com','購買','#f30')">小米</button>
    </p>

屬性:

  • isRecovery: 當(dāng)前Webview窗口是否由于內(nèi)核崩潰自動恢復(fù)

方法:

作者:耶啵_
鏈接:http://www.reibang.com/p/e9e33d14196a
來源:簡書
著作權(quán)歸作者所有搓彻。商業(yè)轉(zhuǎn)載請聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請注明出處嘱朽。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末旭贬,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子燥翅,更是在濱河造成了極大的恐慌骑篙,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,509評論 6 504
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件森书,死亡現(xiàn)場離奇詭異靶端,居然都是意外死亡,警方通過查閱死者的電腦和手機凛膏,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,806評論 3 394
  • 文/潘曉璐 我一進店門杨名,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人猖毫,你說我怎么就攤上這事台谍。” “怎么了吁断?”我有些...
    開封第一講書人閱讀 163,875評論 0 354
  • 文/不壞的土叔 我叫張陵趁蕊,是天一觀的道長。 經(jīng)常有香客問我仔役,道長掷伙,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,441評論 1 293
  • 正文 為了忘掉前任又兵,我火速辦了婚禮任柜,結(jié)果婚禮上卒废,老公的妹妹穿的比我還像新娘。我一直安慰自己宙地,他們只是感情好摔认,可當(dāng)我...
    茶點故事閱讀 67,488評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著宅粥,像睡著了一般参袱。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上粹胯,一...
    開封第一講書人閱讀 51,365評論 1 302
  • 那天蓖柔,我揣著相機與錄音,去河邊找鬼风纠。 笑死况鸣,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的竹观。 我是一名探鬼主播镐捧,決...
    沈念sama閱讀 40,190評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼臭增!你這毒婦竟也來了懂酱?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,062評論 0 276
  • 序言:老撾萬榮一對情侶失蹤誊抛,失蹤者是張志新(化名)和其女友劉穎列牺,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體拗窃,經(jīng)...
    沈念sama閱讀 45,500評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡瞎领,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,706評論 3 335
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了随夸。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片九默。...
    茶點故事閱讀 39,834評論 1 347
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖宾毒,靈堂內(nèi)的尸體忽然破棺而出驼修,到底是詐尸還是另有隱情,我是刑警寧澤诈铛,帶...
    沈念sama閱讀 35,559評論 5 345
  • 正文 年R本政府宣布乙各,位于F島的核電站,受9級特大地震影響幢竹,放射性物質(zhì)發(fā)生泄漏耳峦。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,167評論 3 328
  • 文/蒙蒙 一妨退、第九天 我趴在偏房一處隱蔽的房頂上張望妇萄。 院中可真熱鬧,春花似錦咬荷、人聲如沸冠句。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,779評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽懦底。三九已至,卻和暖如春罕扎,著一層夾襖步出監(jiān)牢的瞬間聚唐,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,912評論 1 269
  • 我被黑心中介騙來泰國打工腔召, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留杆查,地道東北人。 一個月前我還...
    沈念sama閱讀 47,958評論 2 370
  • 正文 我出身青樓臀蛛,卻偏偏與公主長得像亲桦,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子浊仆,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,779評論 2 354

推薦閱讀更多精彩內(nèi)容

  • 1客峭、打開HBuilderX App版 新建項目 配置模擬器端口 device Device模塊管理設(shè)備信息,用于獲...
    一只小丫丫閱讀 3,196評論 0 2
  • Device 屬性: imei: 設(shè)備的國際移動設(shè)備身份碼 imsi: 設(shè)備的國際移動用戶識別碼 model: 設(shè)...
    耶啵_閱讀 298評論 0 0
  • 一抡柿、WebView 谷歌提供的系統(tǒng)組件舔琅,用來加載和展現(xiàn)html網(wǎng)頁,其采用webkit內(nèi)核驅(qū)動洲劣,來實現(xiàn)網(wǎng)頁瀏覽功能...
    閑庭閱讀 6,952評論 2 12
  • Android及iOS的webview的引擎都是webkit备蚓,對H5提供支持.WebView可以使得網(wǎng)頁輕松的內(nèi)嵌...
    NapleC閱讀 5,991評論 6 31
  • 非常感謝香蜜陳老師和大鵬老師抽出寶貴的時間給我們?nèi)珖忝坳P(guān)于拍照技巧的分享! 本次分享分為兩部分 陳老師的分享包括...
    光陰故事書閱讀 690評論 1 9