Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Model Center   Code  
»áÔ±   
   
 
     
   
 ¶©ÔÄ
  ¾èÖú
Cordova - ʹÓÃCordova¿ª·¢iOSÓ¦ÓÃʵս2
 
  2991  次浏览      33
 2019-4-25  
 
±à¼­ÍƼö:
±¾ÎÄÀ´×Ôwww.hangge.com ,ÎÄÕÂΪµÚ¶þƪÖ÷Òª½²½âÁËÌí¼ÓCordova¿ØÖÆÌ¨²å¼þ¡¢µ÷ÓÃÉãÏñÍ·ÅÄÕÕ£¬²¢±à¼­¡¢»ñÈ¡ÊÖ»úÀïÕÕÆ¬£¬²¢±à¼­µÈ·½Ãæ½éÉÜ¡£

µÚһƪΪCordova - ʹÓÃCordova¿ª·¢iOSÓ¦ÓÃʵս1

Ìí¼ÓCordova¿ØÖÆÌ¨²å¼þ

ǰÎĽéÉÜÁËͨ¹ý Safari µÄ Web¼ì²éÆ÷£¬¿ÉÒÔ¿´µ½¿ØÖÆÌ¨Êä³öµÄÐÅÏ¢¡£µ«ÓÐʱÕâÑùµ÷ÊÔ´úÂ벻̫·½±ã£¬Èç¹ûÔÚXcodeÖеÄÃüÁî¿ØÖÆÌ¨Ò²ÄÜͬ²½´òÓ¡³öµ÷ÊÔÐÅÏ¢¾ÍºÃÁË¡£

Õâ¸ö½èÖúCordovaµÄ cordova-plugin-console ²å¼þ¼´¿ÉʵÏÖ¡£

1£¬¸øÏîÄ¿Ìí¼Ócordova-plugin-console²å¼þ

£¨1£©ÔÚ¡°ÖÕ¶Ë¡±ÖнøÈëÏîÄ¿Îļþ¼Ð

£¨2£©ÊäÈëÈçÏÂÃüÁ

cordova plugin add cordova-plugin-console

2£¬²âÊÔÑùÀý

ÎÒÃǽ«Ê×Ò³ index.html Ð޸ijÉÈçÏÂÄÚÈÝ£¬²âÊÔ¸÷ÖÖÀàÐ͵ĿØÖÆÌ¨ÐÅÏ¢¡£

<!DOCTYPE html>
<html>
<head>
<title>Pause Example</title>
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
<script type="text/javascript" charset="utf-8" src="cordova.js"></script>
<script type="text/javascript" charset="utf-8">
document.addEventListener ("deviceready", onDeviceReady, false);
function consoleLog(){
console.log ("console.log works well");
}
function consoleError(){
console.error ("console.error works well");
}
function consoleException(){
console.exception ("console.exception works well");
}
function consoleWarn(){
console.warn ("console.warn works well");
}
function consoleInfo(){
console.info ("console.info works well");
}
function consoleDebug(){
console.debug ("console.debug works well");
}
function consoleAssert(){
console.assert ("console.assert works well");
}
function consoleDir(){
console.dir ("console.dir works well");
}
function consoleDirxml(){
console.dirxml ("console.dirxml works well");
}
function consoleTime(){
console.time ("console.time works well");
}
function consoleTimeEnd(){
console.timeEnd ("console.timeEnd works well");
}
function consoleTable(){
console.table ("console.table works well");
}
</script>
< style type="text/css">
button {
width: 200px;height:26px; font-size: 20px;padding: 1px;margin-left: 50px;
}
</style>
</head>
<body>
<br/><button onclick="consoleLog()"> consoleLog</button><br/>
<br/><button onclick="consoleError()"> consoleError</button><br/>
<br/><button onclick="consoleException()"> consoleException</button><br/>
<br/><button onclick="consoleWarn()"> consoleWarn</button><br/>
<br/><button onclick="consoleInfo()"> consoleInfo</button><br/>
<br/> <button onclick="consoleDebug()"> consoleDebug</button><br/>
<br/><button onclick="consoleAssert()"> consoleAssert</button><br/>
<br/> <button onclick="consoleDir()"> consoleDir</button><br/>
<br/> <button onclick="consoleDirxml()"> consoleDirxml</button><br/>
<br/><button onclick="consoleTime()"> consoleTime</button><br/>
<br/><button onclick="consoleTimeEnd()"> consoleTimeEnd</button><br/>
<br/><button onclick="consoleTable()"> consoleTable</button><br/>
</body>
</html>

 

 

ÔËÐкóÒ³ÃæÈçÏ£º

3£¬²âÊÔ½á¹û

£¨1£©°ÑÒ³ÃæÉϵİ´Å¥¶¼µãÒ»±é£¬¿´µ½SafariµÄWeb¼ì²éÆ÷ÖдòÓ¡³öÁ˸÷ÖÖ¿ØÖÆÌ¨ÐÅÏ¢¡£

£¨2£©Í¬ÑùÔÚXcodeÕâ±ßµÄ¿ØÖÆÌ¨£¬Í¬ÑùÓе÷ÊÔÐÅÏ¢´òÓ¡³öÀ´

µ÷ÓÃÉãÏñÍ·ÅÄÕÕ£¬²¢±à¼­

ʹÓÃCordova¿ÉÒԺܷ½±ãµÄͨ¹ýjs´úÂëÀ´Ê¹ÓÃÉ豸ÉãÏñÍ·ÅÄÕÕ£¬Ö»Ðè°Ñcamera²å¼þÌí¼Ó½øÀ´¼´¿É¡£

Ò»£¬Ìí¼Ócamera²å¼þ

Ê×ÏÈÎÒÃÇÒªÔÚ¡°ÖÕ¶Ë¡±ÖнøÈ빤³ÌËùÔÚµÄĿ¼£¬È»ºóÔËÐÐÈçÏÂÃüÁ

cordova plugin add cordova-plugin-camera

 

¿ÉÒÔ¿´µ½cameraÏà»ú²å¼þÒѾ­³É¹¦Ìí¼ÓÁË£º

¶þ£¬µ÷ÓÃÉ豸ÉãÏñÍ·

1£¬ÅÄÕÕ

ÏÂÃæÑùÀý»áµ÷ÓÃÊÖ»úÉãÏñÍ·ÅÄÕÕ£¨¿ÉÒÔÇл»Ç°ÖᢺóÖÃÉãÏñÍ·£©£¬Í¬Ê±ÅÄÕÕÍê±Ïºó»á°ÑÕÕÆ¬ÔÚÒ³ÃæÉÏÏÔʾ³öÀ´¡£

Ô­ÎÄ:Cordova - ʹÓÃCordova¿ª·¢iOSÓ¦ÓÃʵս4£¨µ÷ÓÃÉãÏñÍ·ÅÄÕÕ£¬²¢±à¼­£© Ô­ÎÄ:Cordova - ʹÓÃCordova¿ª·¢iOSÓ¦ÓÃʵս4£¨µ÷ÓÃÉãÏñÍ·ÅÄÕÕ£¬²¢±à¼­£© Ô­ÎÄ:Cordova - ʹÓÃCordova¿ª·¢iOSÓ¦ÓÃʵս4£¨µ÷ÓÃÉãÏñÍ·ÅÄÕÕ£¬²¢±à¼­£©

Ô­ÎÄ:Cordova - ʹÓÃCordova¿ª·¢iOSÓ¦ÓÃʵս4£¨µ÷ÓÃÉãÏñÍ·ÅÄÕÕ£¬²¢±à¼­£© Ô­ÎÄ:Cordova - ʹÓÃCordova¿ª·¢iOSÓ¦ÓÃʵս4£¨µ÷ÓÃÉãÏñÍ·ÅÄÕÕ£¬²¢±à¼­£©

<!DOCTYPE html>
<html>
<head>
<title>Capture Photo</title>
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
<script type="text/javascript" charset="utf-8" src="cordova.js"></script>
<script type="text/javascript" charset="utf-8">

var destinationType;

document.addEventListener("deviceready",onDeviceReady,false);

//Cordova¼ÓÔØÍê³É»á´¥·¢
function onDeviceReady() {
destinationType=navigator.camera.DestinationType;
}

//ÅÄÕÕ
function capturePhoto() {
//ÅÄÕÕ²¢»ñÈ¡Base64±àÂëµÄͼÏñ£¨quality : ´æ´¢Í¼ÏñµÄÖÊÁ¿£¬·¶Î§ÊÇ[0,100]£©
navigator.camera.getPicture(onPhotoDataSuccess, onFail, { quality: 50,
destinationType: destinationType.DATA_URL }
);
}

//ÅÄÕճɹ¦
function onPhotoDataSuccess(imageData) {
console.log(imageData);
var smallImage = document.getElementById('smallImage');
smallImage.style.display = 'block';
smallImage.src = "data:image/jpeg;base64," + imageData;
}

//ÅÄÕÕʧ°Ü
function onFail(message) {
alert('ÅÄÕÕʧ°Ü: ' + message);
}
</script>
</head>
<body style="padding-top:50px">
<button style="font-size:23px;" onclick="capturePhoto();">ÅÄÉãÕÕÆ¬</button> <br>
<img style="display:none;width:240px;height:320px;" id="smallImage" src="" />
</body>
</html>

2£¬ÅÄÕÕ²¢½øÐб༭

ÅÄÉãÕÕÆ¬ºóÎÒÃÇ»¹¿ÉÒÔ½øÐмòµ¥µÄ±à¼­£¬Ö»Òª°Ñ allowEdit ²ÎÊýÉèΪ true ¼´¿É¡£

ÏÂÃæÑùÀý¿ÉÒÔ¿´µ½£¬ÅÄÕÕÍê±Ïºó»áÏȽøÈë±à¼­½çÃæ¡£ÉÏÃæÓиöÕý·½ÐνøÐпò£¬Í¨¹ýÍÏ×§¡¢Ëõ·ÅÕÕÆ¬¿ÉÒÔ½«Æä²Ã¼ôΪÕý·½ÐεÄͼƬ£¨Õâ¸ö¶ÔÐèҪʹÓÃÕý·½ÐÎͼƬµÄ³¡ºÏ±È½ÏÓÐÓ㬱ÈÈçÓû§Í·Ïñ£©¡£

Ô­ÎÄ:Cordova - ʹÓÃCordova¿ª·¢iOSÓ¦ÓÃʵս4£¨µ÷ÓÃÉãÏñÍ·ÅÄÕÕ£¬²¢±à¼­£© Ô­ÎÄ:Cordova - ʹÓÃCordova¿ª·¢iOSÓ¦ÓÃʵս4£¨µ÷ÓÃÉãÏñÍ·ÅÄÕÕ£¬²¢±à¼­£© Ô­ÎÄ:Cordova - ʹÓÃCordova¿ª·¢iOSÓ¦ÓÃʵս4£¨µ÷ÓÃÉãÏñÍ·ÅÄÕÕ£¬²¢±à¼­£©

<!DOCTYPE html>
<html>
<head>
<title>Capture Photo</title>
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
<script type="text/javascript" charset="utf-8" src="cordova.js"></script>
<script type="text/javascript" charset="utf-8">

var destinationType;

document.addEventListener("deviceready",onDeviceReady,false);

//Cordova¼ÓÔØÍê³É»á´¥·¢
function onDeviceReady() {
destinationType=navigator.camera.DestinationType;
}

//ÅÄÕÕ²¢±à¼­
function capturePhotoEdit() {
//ÅÄÕÕ²¢»ñÈ¡Base64±àÂëµÄͼÏñ£¨quality : ´æ´¢Í¼ÏñµÄÖÊÁ¿£¬·¶Î§ÊÇ[0,100]£©
//allowEdit: true ÅÄÕÕÍê±ÏºóÔÊÐí¼òµ¥±à¼­
navigator.camera.getPicture(onPhotoDataSuccess, onFail, { quality: 20,
allowEdit: true,
destinationType: destinationType.DATA_URL });
}

//ÅÄÕճɹ¦
function onPhotoDataSuccess(imageData) {
console.log(imageData);
var smallImage = document.getElementById('smallImage');
smallImage.style.display = 'block';
smallImage.src = "data:image/jpeg;base64," + imageData;
}

//ÅÄÕÕʧ°Ü
function onFail(message) {
alert('ÅÄÕÕʧ°Ü: ' + message);
}
</script>
</head>
<body style="padding-top:50px">
<button style="font-size:23px;" onclick="capturePhotoEdit();">ÅÄÕÕ²¢±à¼­</button> <br>
<img style="display:none;width:240px;height:240px;" id="smallImage" src="" />
</body>
</html>

Èý¡¢ÉãÏñÍ·²å¼þµÄ³£ÓòÎÊý

1£¬correctOrientation

ÓÐʱÎÒÃÇ·¢ÏÖÅÄÉãºó£¬ÕÕÆ¬ÏÔʾ³öÀ´µÄ·½Ïò²»¶Ô¡£¿ÉÒÔ½« correctOrientation ÉèÖÃ³É true£¬ÕâÑùÅÄÉãºó²å¼þ»á×Ô¶¯ÐýתÕÕÆ¬£¬±£Ö¤·½ÏòÕýÈ·¡£

navigator.camera.getPicture(onPhotoDataSuccess, onFail, { quality: 50,
destinationType: destinationType.DATA_URL
correctOrientation: true}
);

 

2£¬saveToPhotoAlbum

ÉèÖÃ³É true¡£ÅÄÕÕºó»á½«ÕÕÆ¬×Ô¶¯±£´æµ½É豸µÄϵͳÏà²áÖС£

navigator.camera.getPicture(onPhotoDataSuccess, onFail, { quality: 50,
destinationType: destinationType.DATA_URL
saveToPhotoAlbum: true}
);

 

 

3£¬cameraDirection

ÅÄÉãʱĬÈÏʹÓÃÄĸöÉãÏñÍ·¡£Ä¬ÈÏÇé¿öÏÂÊÇʹÓúóÖÃÉãÏñÍ·£¨Camera.Direction.BACK£©¡£ÎÒÃÇ¿ÉÒԸijÉʹÓÃǰÖÃÉãÏñÍ·£¨Camera.Direction.FRONT£©¡£

navigator.camera.getPicture(onPhotoDataSuccess, onFail, { quality: 50,
destinationType: destinationType.DATA_URL
cameraDirection: Camera.Direction.FRONT}
);

»ñÈ¡ÊÖ»úÀïÕÕÆ¬£¬²¢±à¼­

ʹÓÃCordova¿ÉÒԺܷ½±ãµÄͨ¹ýjs´úÂë¶ÁȡϵͳÏಾÀïÃæµÄÕÕÆ¬£¬Í¬Ê¹ÓÃÉ豸ÉãÏñÍ·ÅÄÕÕÒ»Ñù£¬Í¬ÑùÐèÒªÏÈÌí¼Ócamera²å¼þ¡£

Ò»£¬Ìí¼Ócamera²å¼þ

Ê×ÏÈÎÒÃÇÒªÔÚ¡°ÖÕ¶Ë¡±ÖнøÈ빤³ÌËùÔÚµÄĿ¼£¬È»ºóÔËÐÐÈçÏÂÃüÁ

cordova plugin add cordova-plugin-camera

 

¿ÉÒÔ¿´µ½cameraÏà»ú²å¼þÒѾ­³É¹¦Ìí¼ÓÁË£º

¶þ£¬»ñÈ¡ÕÕÆ¬

ÎÒÃÇ¿ÉÒÔÑ¡ÔñÊÇ´Ó¡°ÕÕÆ¬¿â£¨Ê±¿Ì£©¡±ÖжÁȡͼƬ£¬»òÕß´Ó¡°Ïಾ¡±ÖжÁȡͼƬ¡£

1£¬´Ó¡°Ïಾ¡±ÖлñÈ¡ÕÕÆ¬

 

<!DOCTYPE html>
<html>
<head>
<title>Capture Photo</title>
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
<script type="text/javascript" charset="utf-8" src="cordova.js"></script>
<script type="text/javascript" charset="utf-8">
var pictureSource;
var destinationType;

document.addEventListener("deviceready",onDeviceReady,false);

//Cordova¼ÓÔØÍê³É»á´¥·¢
function onDeviceReady() {
pictureSource=navigator.camera.PictureSourceType;
destinationType=navigator.camera.DestinationType;
}

//»ñÈ¡ÕÕÆ¬
function getPhoto(source) {
//quality : ͼÏñµÄÖÊÁ¿£¬·¶Î§ÊÇ[0,100]
navigator.camera.getPicture(onPhotoURISuccess, onFail, { quality: 50,
destinationType: destinationType.FILE_URI,
sourceType: source });
}

//»ñÈ¡ÕÕÆ¬³É¹¦
function onPhotoURISuccess(imageURI) {
//´òÓ¡³öÕÕÆ¬Â·¾¶
console.log(imageURI);
var largeImage = document.getElementById('largeImage');
largeImage.style.display = 'block';
largeImage.src = imageURI;
}

//»ñÈ¡ÕÕÆ¬ÊǰÉ
function onFail(message) {
alert('»ñȡʧ°Ü: ' + message);
}
</script>
</head>
<body style="padding-top:50px">
<button style="font-size:23px;" onclick="getPhoto(pictureSource.PHOTOLIBRARY);">
´Ó¡°Ïಾ¡±ÖлñÈ¡ÕÕÆ¬
</button> <br>
<img style="display:none;" id="largeImage" src="" />
</body>
</html>

 

2£¬´Ó¡°ÕÕÆ¬¿â£¨Ê±¿Ì£©¡±ÖлñÈ¡ÕÕÆ¬

<!DOCTYPE html>
<html>
<head>
<title>Capture Photo</title>
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
<script type="text/javascript" charset="utf-8" src="cordova.js"></script>
<script type="text/javascript" charset="utf-8">
var pictureSource;
var destinationType;

document.addEventListener("deviceready",onDeviceReady,false);

//Cordova¼ÓÔØÍê³É»á´¥·¢
function onDeviceReady() {
pictureSource=navigator.camera.PictureSourceType;
destinationType=navigator.camera.DestinationType;
}

//»ñÈ¡ÕÕÆ¬
function getPhoto(source) {
//quality : ͼÏñµÄÖÊÁ¿£¬·¶Î§ÊÇ[0,100]
navigator.camera.getPicture(onPhotoURISuccess, onFail, { quality: 50,
destinationType: destinationType.FILE_URI,
sourceType: source });
}

//»ñÈ¡ÕÕÆ¬³É¹¦
function onPhotoURISuccess(imageURI) {
//´òÓ¡³öÕÕÆ¬Â·¾¶
console.log(imageURI);
var largeImage = document.getElementById('largeImage');
largeImage.style.display = 'block';
largeImage.src = imageURI;
}

//»ñÈ¡ÕÕÆ¬ÊǰÉ
function onFail(message) {
alert('»ñȡʧ°Ü: ' + message);
}
</script>
</head>
<body style="padding-top:50px">
<button style="font-size:23px;" onclick="getPhoto(pictureSource.SAVEDPHOTOALBUM);">
´Ó¡°Ê±¿Ì¡±ÖлñÈ¡ÕÕÆ¬
</button> <br>
<img style="display:none;" id="largeImage" src="" />
</body>
</html>

 

 

 

   
2991 ´Îä¯ÀÀ       33
Ïà¹ØÎÄÕÂ

Éî¶È½âÎö£ºÇåÀíÀôúÂë
ÈçºÎ±àд³öÓµ±§±ä»¯µÄ´úÂë
ÖØ¹¹-ʹ´úÂë¸ü¼ò½àÓÅÃÀ
ÍŶÓÏîÄ¿¿ª·¢"±àÂë¹æ·¶"ϵÁÐÎÄÕÂ
Ïà¹ØÎĵµ

ÖØ¹¹-¸ÄÉÆ¼ÈÓдúÂëµÄÉè¼Æ
Èí¼þÖØ¹¹v2
´úÂëÕû½àÖ®µÀ
¸ßÖÊÁ¿±à³Ì¹æ·¶
Ïà¹Ø¿Î³Ì

»ùÓÚHTML5¿Í»§¶Ë¡¢Web¶ËµÄÓ¦Óÿª·¢
HTML 5+CSS ¿ª·¢
ǶÈëʽC¸ßÖÊÁ¿±à³Ì
C++¸ß¼¶±à³Ì