2014-01-09 4 views
3

Мне нужно добавить фотографию к моему пользователю, выполнив ее из веб-интерфейса, я установил фотографию в поле photo, но если я попытаюсь сделать то же самое программно из мобильного приложения, это не сработает ,Могу ли я установить фотографию пользователя на Titanium ACS?

photonativePath - это мой фотограф с камеры или галереи.

Cloud.Users.update({ 
    email: '[email protected]', 
    first_name: 'joe', 
    last_name: 'user', 
    photo : Titanium.Filesystem.getFile(photonativePath), 
    custom_fields: { 
     favorite_color: 'blue', 
     age: 25 
    } 
}, function (e) { 
    if (e.success) { 
     var user = e.users[0]; 
     alert('Success:\n' + 
      'id: ' + user.id + '\n' + 
      'first name: ' + user.first_name + '\n' + 
      'last name: ' + user.last_name); 
    } else { 
     alert('Error:\n' + 
      ((e.error && e.message) || JSON.stringify(e))); 
    } 
}); 
+0

Какую ошибку вы получаете? – Anand

+0

Также какова ценность photonativePath – Anand

+0

photonativePath - это мой фотопривод от камеры или галереи. – jay

ответ

2

Попробуйте следующее, Вы можете открыть фотогалерею с помощью метода openPhotoGallery. Откроется изображение из галереи и выберите изображение. Он будет обновлять картину в успех обратного вызова

function openPhotoGallery(){ 
    Ti.Media.openPhotoGallery({ 
     success: function (event){ 
      var image=event.media; 
      var imgvwTest = Ti.UI.createImageView({ 
       image : image 
      }); 
      updatePhoto(imgvwTest.toImage()); 
     }, 
     cancel:function(){ 
      Titanium.UI.createAlertDialog({ 
       title:'Error', 
       message:'An error occured while trying to reference your gallery!' 
      }).show(); 
     }, 
     error:function(er){ 
      Titanium.UI.createAlertDialog({ 
       title:'Error', 
       message:'An error occured while trying to reference your gallery!' 
      }).show(); 
     } 
    }); 

} 

function updatePhoto(selectedImage){ 

    Cloud.Users.update({ 
     email: '[email protected]', 
     first_name: 'joe', 
     last_name: 'user', 
     photo : selectedImage.media, 
     custom_fields: { 
      favorite_color: 'blue', 
      age: 25 
     } 
    }, function (e) { 
     if (e.success) { 
      var user = e.users[0]; 
      alert('Success:\n' + 
       'id: ' + user.id + '\n' + 
       'first name: ' + user.first_name + '\n' + 
       'last name: ' + user.last_name); 
     } else { 
      alert('Error:\n' + 
       ((e.error && e.message) || JSON.stringify(e))); 
     } 
    }); 
} 

Пожалуйста, дайте мне знать, если у вас есть какие-либо вопросы

+0

не работает, i'v успех, но фотография не была установлена ​​ – jay

+0

Вы проверили фотографию на сервере ACS? Доступно ли там? – Anand

+0

да, я сделал это, но нет pic – jay

Смежные вопросы