Comment puis-je obtenir un nom de contact avec son numéro

J'essaie de développer une application simple utilisant Android Scripting et Python.

Maintenant, j'ai un numéro de téléphone, et je veux savoir quel contact a ce numéro. Je peux faire un contactGet () et rechercher des nombres, mais tant de programmes utilisent cette fonctionnalité, je pense qu'il y a un moyen plus facile pour cela.

  • Nouveau projet Android
  • Transaction de classeur défaillante lors de la mise en place dynamique d'un bitmap dans un widget
  • Décompte sur l'édition d'impression sans fil <issue> d'Android Lint
  • Résultat Wearable.NodeApi.getConnectedNodes jamais appelé
  • Android IllegalArgumentException: déjà ajouté
  • Comment utiliser wrap_content avec une largeur maximale?
  • Il y a une question avec le même problème, mais Java, y at-il un équivalent Python? Rechercher un contact par numéro de téléphone

    Y a-t-il un moyen simple d'y parvenir?

    Un code d'exemple est apprécié.

    Edit, après quelques jours sans réponse, j'ai décidé de changer un peu la question: quelle est la meilleure façon de rechercher un numéro pour une liste que j'ai obtenue avec les contactsGet ()?

  • Android Studio: vous devez spécifier un chemin d'accès au dossier Genymotion pour utiliser cette fonctionnalité
  • ActionBarActivity est obsolète
  • Android - tutoriels pour OpenGL ES 2.0 à l'aide du NDK?
  • Essayer de démarrer un service lors du démarrage sur Android
  • Comment rendre disponible le mode Ralphine à la caméra
  • Exception de l'argument d'utilisation illégale du fournisseur de fichiers Android
  • 4 Solutions collect form web for “Comment puis-je obtenir un nom de contact avec son numéro”

    C'est un problème commun avec les couches d'abstraction. La couche ne résume pas une fonctionnalité, un outil ou un cas particulier que vous souhaitez utiliser. Dans ce cas, cependant, il semble que tout l'espoir n'est pas perdu. Il semble que le script android scripting api soit un projet open source. Pourquoi ne pas contribuer un patch qui fournirait cette capacité au projet?

    Je peux contribuer à un tel patch à un certain point dans le futur, mais si c'est important pour vous, vous pourriez faire de même avant que je le fasse et soyez sur votre chemin!

    package com.slk.example.CursorActivity; import android.app.ListActivity; import android.content.Context; import android.database.Cursor; import android.os.Bundle; import android.provider.Contacts.Phones; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.CursorAdapter; import android.widget.TextView; public class CursorActivity extends ListActivity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Cursor contactsCursor = this.managedQuery(Phones.CONTENT_URI, null, null, null, null); this.setListAdapter(new MyContactsAdapter(this,contactsCursor)); } private class MyContactsAdapter extends CursorAdapter{ private Cursor mCursor; private Context mContext; private final LayoutInflater mInflater; public MyContactsAdapter(Context context, Cursor cursor) { super(context, cursor, true); mInflater = LayoutInflater.from(context); mContext = context; } @Override public void bindView(View view, Context context, Cursor cursor) { TextView t = (TextView) view.findViewById(R.id.txtName); t.setText(cursor.getString(cursor.getColumnIndex(Phones.NAME))); t = (TextView) view.findViewById(R.id.txtDisplayName); t.setText(cursor.getString(cursor.getColumnIndex(Phones.DISPLAY_NAME))); t = (TextView) view.findViewById(R.id.txtPhone); t.setText(cursor.getString(cursor.getColumnIndex(Phones.NUMBER))); } @Override public View newView(Context context, Cursor cursor, ViewGroup parent) { final View view = mInflater.inflate(R.layout.main, parent, false); return view; } } } 

    Vous voudrez peut-être jeter un oeil à la table de données ContactsContract . Demandez-le avec quelque chose comme ceci:

      Cursor c = getContentResolver().query(Data.CONTENT_URI, new String[] {Data._ID, Phone.NUMBER, Phone.TYPE, Phone.LABEL}, Data.RAW_CONTACT_ID + "=?" + " AND " + Data.MIMETYPE + "='" + Phone.CONTENT_ITEM_TYPE + "'", new String[] {String.valueOf(rawContactId) }, null) 

    Vous pouvez essayer, si ce n'est pas encore le cas, l'API Contact: http://developer.android.com/resources/articles/contacts.html

    coAndroid est un fan Android de Google, tout sur les téléphones Android, Android Wear, Android Dev et Android Games Apps.