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>
方法:
對象:
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("用戶點(diǎn)擊"),"原生彈出","確定");
// 彈出內(nèi)容,回調(diào)函數(shù),標(biāo)題,確定按鈕文字
}
function showConfirm(){
plus.nativeUI.confirm("你準(zhǔn)備好了嗎",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);// 默認(rèn)顯示的日期
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 確認(rèn)</button><br><br>
<button onclick="showWaiting()">加載提示</button><br><br>
<button onclick="pickDate()">選擇日期</button><br><br>
</p>
方法:
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>
方法:
對象:
webview
- Webview模塊管理應(yīng)用窗口界面,實(shí)現(xiàn)多窗口的邏輯控制管理操作剃袍。通過plus.webview可獲取應(yīng)用界面管理對象黄刚。
var _openw = null;
function openAbout(){
if(_openw){return;} // 防止快速點(diǎn)擊
_openw = plus.webview.create('about.html','about',{
backButtonAutoControl:'close',
titleNView:{
autoBackButton:true,
backgroundColor:"#f30",
titleText:'關(guān)于我們',
titleColor:"#fff",
buttons:[{
type:'share',
onclick:()=>alert("分享被點(diǎn)擊了")
}]
}
})
_openw.addEventListener('close',()=>_openw=null);
_openw.show('slide-in-right');
}
function openPage(url,title,bgcolor){
plus.navigator.setStatusBarBackground(bgcolor);
if(_openw){return;}//防止快速點(diǎn)擊;
_openw = plus.webview.create(url,title,{
backButtonAutoControl:'close',//當(dāng)返回的時候關(guān)閉webview(當(dāng)前的窗口)
// 設(shè)置標(biāo)題
titleNView:{
autoBackButton:true,//默認(rèn)返回按鈕
backgroundColor:bgcolor, //標(biāo)題欄顏色,
titleText:title,//標(biāo)題欄文本,
titleColor:"#fff",
progress:{color:"#fff"},
// 設(shè)置進(jìn)度條的顏色為白色
buttons:[{
type:'share',
onclick:()=>alert("分享被點(diǎn)擊了")
}]
}
})
_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ù)
方法: