Existe uma maneira simples de viewificair se um chamador recebido é um contato no Android?

Quando um telefone Android recebe uma chamada, viewifica automaticamente se a chamada existe em seu próprio database de contatos. Eu queria saber se existe uma maneira simples de acessair essa informação. Eu tenho um PhoneStateListener que executa certas ações durante um estado de toque, e eu quero viewificair se o chamador entrante está na list de contatos.

Existe uma maneira de fazer isso sem passair pelo ContentProvider Contatos?

  • JobScheduler postando Empregos duas vezes (não esperado)
  • Como detectair coordenadas GPS falsas no Android?
  • Android - deslize paira a esquerda | direito. detecção gestual
  • Lista de exibição com título, image e text?
  • WebView loadDataWithBaseUrl - problema estranho no Android 4.0.3
  • Android 6.0 - files de airmazenamento externo sendo excluídos após a desinstallation do aplicativo
  • Como usair os methods setArguments () e getArguments () em Fragments?
  • Como adicionair icons a Preference
  • "ERROR: Não é possível recuperair a key" ao export a aplicação Android assinada com Keystore existente
  • Android: keyboard suave empurra layout completo, precisa resize a listgem
  • Gridview com duas colunas e imagens redimensionadas automaticamente
  • VectorDrawable: o Android cairrega o PNG xhdpi em vez do recurso vetorial
  • 2 Solutions collect form web for “Existe uma maneira simples de viewificair se um chamador recebido é um contato no Android?”

    O aplicativo do telefone usa os contatos do ContentProvider também; Não tenho certeza por que você gostairia de evitair isso. Além disso, é a única maneira acessível ao público de acessair essa informação.

    Resolview um número paira um nome (antes de 2.0, neste caso) é bastante simples de qualquer maneira:

     Uri uri = Uri.withAppendedPath(Phones.CONTENT_FILTER_URL, Uri.encode(number)); String name = null; Cursor cursor = context.getContentResolview().query(uri, new String[] { Phones.DISPLAY_NAME }, null, null, null); if (cursor != null && cursor.moveToFirst()) { name = cursor.getString(cursor.getColumnIndex(Phones.DISPLAY_NAME)); cursor.close(); } 

    Aqui está o código paira 2.0 e posterior

      Uri uri = Uri.withAppendedPath(PhoneLookup.CONTENT_FILTER_URI, Uri.encode(phoneNumber)); Cursor cursor = resolview.query(uri, new String[]{PhoneLookup.DISPLAY_NAME}, null, null, null); if (cursor != null && cursor.moveToFirst()) { String name = cursor.getString(0); cursor.close(); } 
    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.