Autore Topic: foto contatto in rubrica  (Letto 1304 volte)

Offline raimondo

  • Utente junior
  • **
  • Post: 130
  • Respect: 0
    • Mostra profilo
foto contatto in rubrica
« il: 12 Dicembre 2011, 15:42:04 CET »
0
Salve ragazzi da un numero di telefono devo caricare le info di un contatto però ho anke bisogno della foto però qundo accendo all'elemento mi viene dato un id....come posso fare ad accedere alla foto? grazie mille
Codice (Java): [Seleziona]
Uri uri = Uri.withAppendedPath(PhoneLookup.CONTENT_FILTER_URI, Uri.encode(number));
               
            Cursor cursor = context.getContentResolver().query(uri, null , null, null, null);
           
            if (cursor.moveToFirst()){
                id = String.valueOf((cursor.getLong(cursor.getColumnIndex(PhoneLookup._ID))));
                name = cursor.getString(cursor.getColumnIndex(PhoneLookup.DISPLAY_NAME));
                timesContacted = cursor.getInt(cursor.getColumnIndex(PhoneLookup.TIMES_CONTACTED));
                cursor.getInt(cursor.getColumnIndex(PhoneLookup.PHOTO_ID));
            }
            cursor.close();

Offline raimondo

  • Utente junior
  • **
  • Post: 130
  • Respect: 0
    • Mostra profilo
Re:foto contatto in rubrica
« Risposta #1 il: 12 Dicembre 2011, 18:21:37 CET »
0
up

Offline Ricky`

  • Amministratore
  • Utente storico
  • *****
  • Post: 3489
  • Respect: +506
    • Github
    • Google+
    • rciovati
    • Mostra profilo
R: Re:foto contatto in rubrica
« Risposta #2 il: 12 Dicembre 2011, 19:26:19 CET »
0
up

Non è necessario uppare. Piuttosto cerca meglio nel forum.

Inviato dal mio HTC Desire usando Tapatalk

Offline raimondo

  • Utente junior
  • **
  • Post: 130
  • Respect: 0
    • Mostra profilo
Re:R: Re:foto contatto in rubrica
« Risposta #3 il: 12 Dicembre 2011, 20:11:46 CET »
0
Non è necessario uppare. Piuttosto cerca meglio nel forum.

Inviato dal mio HTC Desire usando Tapatalk

nel forum nn ho trovato nulla....nn mi sapresti dare una mano? O:-)

Offline raimondo

  • Utente junior
  • **
  • Post: 130
  • Respect: 0
    • Mostra profilo
Re:foto contatto in rubrica
« Risposta #4 il: 14 Dicembre 2011, 16:09:15 CET »
0
ragazzi sul sito di android per gli sviluppatori ho trovato questo codice per le immagini di un contatto però nn so come posso trasforma un input stream in un foto...qualcuno sa darmi una mano? ciao a tutti e grazie
Codice (Java): [Seleziona]
Retrieving the thumbnail-sized photo

     public InputStream openPhoto(long contactId) {
         Uri contactUri = ContentUris.withAppendedId(Contacts.CONTENT_URI, contactId);
         Uri photoUri = Uri.withAppendedPath(contactUri, Contacts.Photo.CONTENT_DIRECTORY);
         Cursor cursor = getContentResolver().query(photoUri,
              new String[] {Contacts.Photo.PHOTO}, null, null, null);
         if (cursor == null) {
             return null;
         }
         try {
             if (cursor.moveToFirst()) {
                 byte[] data = cursor.getBlob(0);
                 if (data != null) {
                     return new ByteArrayInputStream(data);
                 }
             }
         } finally {
             cursor.close();
         }
         return null;
     }
     

Offline raimondo

  • Utente junior
  • **
  • Post: 130
  • Respect: 0
    • Mostra profilo
Re:foto contatto in rubrica
« Risposta #5 il: 14 Dicembre 2011, 16:35:06 CET »
0
ho fatto qualche modifica e il codice ke hocacciato è questo :
Codice (Java): [Seleziona]
                         ImageView image = (ImageView) findViewById(R.id.personImage);
                     Uri contactUri = ContentUris.withAppendedId(Contacts.CONTENT_URI, Long.parseLong(c.getId()));
                     Uri photoUri = Uri.withAppendedPath(contactUri, Contacts.Photo.CONTENT_DIRECTORY);
                     Cursor cursor = getContentResolver().query(photoUri,new String[] {Contacts.Photo.DATA15}, null, null, null);
                     if (cursor.moveToFirst()) {
                             byte[] data = cursor.getBlob(0);
                             if (data != null) {
                                Bitmap m = BitmapFactory.decodeStream(new ByteArrayInputStream(data));
                                image.setImageBitmap(m);
                             }
                         }
                   
                         cursor.close();
però l'applicazione si kiude forzatamente ...ecco il logcat:
Codice: [Seleziona]
12-14 16:24:17.897: E/AndroidRuntime(575): FATAL EXCEPTION: main
12-14 16:24:17.897: E/AndroidRuntime(575): java.lang.RuntimeException: Unable to start activity ComponentInfo{android.contact/android.contact.ContactNotifyActivity}: java.lang.RuntimeException: Unable to start activity ComponentInfo{android.contact/android.contact.ContactView}: java.lang.ClassCastException: android.widget.TextView
12-14 16:24:17.897: E/AndroidRuntime(575):         at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1622)
12-14 16:24:17.897: E/AndroidRuntime(575):         at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1638)
12-14 16:24:17.897: E/AndroidRuntime(575):         at android.app.ActivityThread.access$1500(ActivityThread.java:117)
12-14 16:24:17.897: E/AndroidRuntime(575):         at android.app.ActivityThread$H.handleMessage(ActivityThread.java:928)
12-14 16:24:17.897: E/AndroidRuntime(575):         at android.os.Handler.dispatchMessage(Handler.java:99)
12-14 16:24:17.897: E/AndroidRuntime(575):         at android.os.Looper.loop(Looper.java:123)
12-14 16:24:17.897: E/AndroidRuntime(575):         at android.app.ActivityThread.main(ActivityThread.java:3647)
12-14 16:24:17.897: E/AndroidRuntime(575):         at java.lang.reflect.Method.invokeNative(Native Method)
12-14 16:24:17.897: E/AndroidRuntime(575):         at java.lang.reflect.Method.invoke(Method.java:507)
12-14 16:24:17.897: E/AndroidRuntime(575):         at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
12-14 16:24:17.897: E/AndroidRuntime(575):         at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
12-14 16:24:17.897: E/AndroidRuntime(575):         at dalvik.system.NativeStart.main(Native Method)
12-14 16:24:17.897: E/AndroidRuntime(575): Caused by: java.lang.RuntimeException: Unable to start activity ComponentInfo{android.contact/android.contact.ContactView}: java.lang.ClassCastException: android.widget.TextView
12-14 16:24:17.897: E/AndroidRuntime(575):         at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1622)
12-14 16:24:17.897: E/AndroidRuntime(575):         at android.app.ActivityThread.startActivityNow(ActivityThread.java:1462)
12-14 16:24:17.897: E/AndroidRuntime(575):         at android.app.LocalActivityManager.moveToState(LocalActivityManager.java:127)
12-14 16:24:17.897: E/AndroidRuntime(575):         at android.app.LocalActivityManager.startActivity(LocalActivityManager.java:339)
12-14 16:24:17.897: E/AndroidRuntime(575):         at android.widget.TabHost$IntentContentStrategy.getContentView(TabHost.java:654)
12-14 16:24:17.897: E/AndroidRuntime(575):         at android.widget.TabHost.setCurrentTab(TabHost.java:326)
12-14 16:24:17.897: E/AndroidRuntime(575):         at android.widget.TabHost.addTab(TabHost.java:216)
12-14 16:24:17.897: E/AndroidRuntime(575):         at android.contact.ContactNotifyActivity.onCreate(ContactNotifyActivity.java:60)
12-14 16:24:17.897: E/AndroidRuntime(575):         at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
12-14 16:24:17.897: E/AndroidRuntime(575):         at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1586)
12-14 16:24:17.897: E/AndroidRuntime(575):         ... 11 more
12-14 16:24:17.897: E/AndroidRuntime(575): Caused by: java.lang.ClassCastException: android.widget.TextView
12-14 16:24:17.897: E/AndroidRuntime(575):         at android.contact.ContactView.onCreate(ContactView.java:61)
12-14 16:24:17.897: E/AndroidRuntime(575):         at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
12-14 16:24:17.897: E/AndroidRuntime(575):         at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1586)
12-14 16:24:17.897: E/AndroidRuntime(575):         ... 20 more
12-14 16:29:00.117: E/AndroidRuntime(614): FATAL EXCEPTION: main
12-14 16:29:00.117: E/AndroidRuntime(614): java.lang.RuntimeException: Unable to start activity ComponentInfo{android.contact/android.contact.ContactNotifyActivity}: java.lang.RuntimeException: Unable to start activity ComponentInfo{android.contact/android.contact.ContactView}: java.lang.ClassCastException: android.widget.TextView
12-14 16:29:00.117: E/AndroidRuntime(614):         at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1622)
12-14 16:29:00.117: E/AndroidRuntime(614):         at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1638)
12-14 16:29:00.117: E/AndroidRuntime(614):         at android.app.ActivityThread.access$1500(ActivityThread.java:117)
12-14 16:29:00.117: E/AndroidRuntime(614):         at android.app.ActivityThread$H.handleMessage(ActivityThread.java:928)
12-14 16:29:00.117: E/AndroidRuntime(614):         at android.os.Handler.dispatchMessage(Handler.java:99)
12-14 16:29:00.117: E/AndroidRuntime(614):         at android.os.Looper.loop(Looper.java:123)
12-14 16:29:00.117: E/AndroidRuntime(614):         at android.app.ActivityThread.main(ActivityThread.java:3647)
12-14 16:29:00.117: E/AndroidRuntime(614):         at java.lang.reflect.Method.invokeNative(Native Method)
12-14 16:29:00.117: E/AndroidRuntime(614):         at java.lang.reflect.Method.invoke(Method.java:507)
12-14 16:29:00.117: E/AndroidRuntime(614):         at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
12-14 16:29:00.117: E/AndroidRuntime(614):         at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
12-14 16:29:00.117: E/AndroidRuntime(614):         at dalvik.system.NativeStart.main(Native Method)
12-14 16:29:00.117: E/AndroidRuntime(614): Caused by: java.lang.RuntimeException: Unable to start activity ComponentInfo{android.contact/android.contact.ContactView}: java.lang.ClassCastException: android.widget.TextView
12-14 16:29:00.117: E/AndroidRuntime(614):         at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1622)
12-14 16:29:00.117: E/AndroidRuntime(614):         at android.app.ActivityThread.startActivityNow(ActivityThread.java:1462)
12-14 16:29:00.117: E/AndroidRuntime(614):         at android.app.LocalActivityManager.moveToState(LocalActivityManager.java:127)
12-14 16:29:00.117: E/AndroidRuntime(614):         at android.app.LocalActivityManager.startActivity(LocalActivityManager.java:339)
12-14 16:29:00.117: E/AndroidRuntime(614):         at android.widget.TabHost$IntentContentStrategy.getContentView(TabHost.java:654)
12-14 16:29:00.117: E/AndroidRuntime(614):         at android.widget.TabHost.setCurrentTab(TabHost.java:326)
12-14 16:29:00.117: E/AndroidRuntime(614):         at android.widget.TabHost.addTab(TabHost.java:216)
12-14 16:29:00.117: E/AndroidRuntime(614):         at android.contact.ContactNotifyActivity.onCreate(ContactNotifyActivity.java:60)
12-14 16:29:00.117: E/AndroidRuntime(614):         at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
12-14 16:29:00.117: E/AndroidRuntime(614):         at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1586)
12-14 16:29:00.117: E/AndroidRuntime(614):         ... 11 more
12-14 16:29:00.117: E/AndroidRuntime(614): Caused by: java.lang.ClassCastException: android.widget.TextView
12-14 16:29:00.117: E/AndroidRuntime(614):         at android.contact.ContactView.onCreate(ContactView.java:61)
12-14 16:29:00.117: E/AndroidRuntime(614):         at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
12-14 16:29:00.117: E/AndroidRuntime(614):         at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1586)
12-14 16:29:00.117: E/AndroidRuntime(614):         ... 20 more

ah mi sapreste dire come si caricano foto su un emultore per porterle aggiungere a un contatto?
grazie e ciao