私はのandroid
の連絡先の写真を取得しようとしていますが、私は次のURLを取得しています。それをimg
タグで示してください。最終的にはリストに私はときphonegapに連絡先のデータイメージを表示できません
//com.android.contacts/contacts/739/photo今:
コード
var defaultImagePath ='../resources/images/default_usr.png'
var img = contacts[i].photos != null ?
contacts[i].photos[0].value : defaultImagePath;
は、URLが
あるコンテンツを返さそれを表示しようとしています
<img src="content://com.android.contacts/contacts/739/photo"/>
でも、何も表示されませんか?どうすれば連絡先の画像を表示できますか?
私は
window.resolveLocalFileSystemURI(接点[I] .photos [0] .VALUE、this.onResolveSuccess、this.fail)を使用している最新バージョン
PhoneGap
を有します。
しかし、私はアンドロイド
ここ<uses-permission android:name="android.permission.VIBRATE" /> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> <uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" /> <uses-permission android:name="android.permission.READ_PHONE_STATE" /> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.RECEIVE_SMS" /> <uses-permission android:name="android.permission.RECORD_AUDIO" /> <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" /> <uses-permission android:name="android.permission.READ_CONTACTS" /> <uses-permission android:name="android.permission.WRITE_CONTACTS" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.GET_ACCOUNTS" /> <uses-permission android:name="android.permission.BROADCAST_STICKY" />
UPDATE
loadContacts:function(){ var arr = []; var filter = ["displayName", "name", "phoneNumbers","emails","addresses","photos"]; var options = new ContactFindOptions(); options.filter=""; options.multiple=true; navigator.contacts.find(filter, function(contacts) { for (var i = 0; i < contacts.length; i++) { if (contacts[i].photos) { for (var j = 0; j < contacts[i].photos.length; j++) { returnValidPhoto(contacts[i].photos[j], function(answer) { console.log(answer); if(contacts[i].photos[j]!=null); contacts[i].photos[j].value=answer; }); var contactData = new ContactData("Name" , "09090909", contacts[i].photos[j].value); arr.push(contactData); } } } Ext.getStore('ContactStore').setData(arr); // document.getElementById("contactdata").innerHTML = data; }, function(err) { alert(err); },options); }
に次の権限を指定しているにもかかわらず、次の実行時エラーに
JNI ERROR (app bug): attempt to use stale local reference in phonegap
を取得しています画像機能です
function returnValidPhoto(url,callback){ console.log("IMAGE CALLED"); var img = new Image(); img.onload = function() { //Image is ok console.log("IMAGE OK"); callback(url.value); }; img.onerror = function(err) { //Returning a default image for users without photo console.log("IMAGE FAILED"); url.value = "/resources/images/default_usr.png"; callback("/resources/images/default_usr.png"); } img.src = url.value; };
これを解決しましたか?私は同じ問題を抱えています、連絡先の画像が表示されていません... –