07-09-2018, Saat: 09:53
konu güncel...
|
gelen arama listesini alma
|
|
07-09-2018, Saat: 10:22
Cevaplar da güncel
Yukarıda verilen linklere baktınız mı Delphi için örnek kod istemişsiniz ama verilen linke örnek kod var Kodları deneyip de sorun yaşadı iseniz onu belirtin, ona göre ilerleyelim
There's no place like 127.0.0.1
07-09-2018, Saat: 12:46
@SimaWB sağolsun durumu güzel özetledi.
- DelphiCanlar için başlığı okuyacak / meraklı diğer kullanıcılar için kendi arşivimden bir kod içerisinden sadeleştirerek kod örneği hazırladım. Göreceksiniz ki verdiğim StackOverflow linkindeki kodlar ile çok benzer. - Neden hazır kod veriyorum, çünkü Android erişim kodlarının çok fazla esnekliği yok. Yani özel zeka isteyen (strateji üretmek manasında) bir çaba gerekmiyor. Uses Androidapi.JNI.Net, Androidapi.JNI.GraphicsContentViewText,
Androidapi.Helpers,
Androidapi.JNI.Provider, FMX.Helpers.Android;
// READ_CALL_LOG için Permission : TRUE olmalı
function AramaKayitlari( iSonCagriSay: Integer = 99999 ):string;
Type tIcerikIndexleri = Record
CACHED_FORMATTED_NUMBER,
CACHED_LOOKUP_URI,
CACHED_MATCHED_NUMBER,
CACHED_NAME,
CACHED_NORMALIZED_NUMBER,
CACHED_NUMBER_LABEL,
CACHED_NUMBER_TYPE,
CACHED_PHOTO_ID,
CONTENT_ITEM_TYPE,
CONTENT_TYPE,
COUNTRY_ISO,
DATA_USAGE, DATE,
DEFAULT_SORT_ORDER,
DURATION,
EXTRA_CALL_TYPE_FILTER,
FEATURES,
IS_READ,
LIMIT_PARAM_KEY,
NEW, NUMBER,
NUMBER_PRESENTATION,
OFFSET_PARAM_KEY,
PHONE_ACCOUNT_COMPONENT_NAME,
PHONE_ACCOUNT_ID,
TRANSCRIPTION,
VOICEMAIL_URI,
TYPEX : integer;
end;
pIcerikIndexleri = ^tIcerikIndexleri;
var
Cursor : Androidapi.JNI.GraphicsContentViewText.JCursor;
Uri : Androidapi.JNI.Net.Jnet_Uri;
BaslangicIdx : pIcerikIndexleri;
strNo, strType, strName, strDuration : String;
begin
Uri := Androidapi.Helpers.StrToJURI('content://call_log/calls');
Cursor := Androidapi.Helpers.SharedActivity.getContentResolver.query(uri, nil, nil, nil, nil);
// Milat olarak belirlenen
New(BaslangicIdx);
BaslangicIdx.CACHED_FORMATTED_NUMBER := cursor.getColumnIndex(StringToJstring('CACHED_FORMATTED_NUMBER'));
BaslangicIdx.CACHED_LOOKUP_URI := cursor.getColumnIndex(StringToJstring('CACHED_LOOKUP_URI'));
BaslangicIdx.CACHED_MATCHED_NUMBER := cursor.getColumnIndex(StringToJstring('CACHED_MATCHED_NUMBER'));
BaslangicIdx.CACHED_NAME := cursor.getColumnIndex(StringToJstring('CACHED_NAME'));
BaslangicIdx.CACHED_NORMALIZED_NUMBER := cursor.getColumnIndex(StringToJstring('CACHED_NORMALIZED_NUMBER'));
BaslangicIdx.CACHED_NUMBER_LABEL := cursor.getColumnIndex(StringToJstring('CACHED_NUMBER_LABEL'));
BaslangicIdx.CACHED_NUMBER_TYPE := cursor.getColumnIndex(StringToJstring('CACHED_NUMBER_TYPE'));
BaslangicIdx.CACHED_PHOTO_ID := cursor.getColumnIndex(StringToJstring('CACHED_PHOTO_ID'));
BaslangicIdx.CONTENT_ITEM_TYPE := cursor.getColumnIndex(StringToJstring('CONTENT_ITEM_TYPE'));
BaslangicIdx.CONTENT_TYPE := cursor.getColumnIndex(StringToJstring('CONTENT_TYPE'));
BaslangicIdx.COUNTRY_ISO := cursor.getColumnIndex(StringToJstring('COUNTRY_ISO'));
BaslangicIdx.DATA_USAGE := cursor.getColumnIndex(StringToJstring('DATA_USAGE'));
BaslangicIdx.DATE := cursor.getColumnIndex(StringToJstring('DATE'));
BaslangicIdx.DEFAULT_SORT_ORDER := cursor.getColumnIndex(StringToJstring('DEFAULT_SORT_ORDER'));
BaslangicIdx.DURATION := cursor.getColumnIndex(StringToJstring('DURATION'));
BaslangicIdx.EXTRA_CALL_TYPE_FILTER := cursor.getColumnIndex(StringToJstring('EXTRA_CALL_TYPE_FILTER'));
BaslangicIdx.FEATURES := cursor.getColumnIndex(StringToJstring('FEATURES'));
BaslangicIdx.IS_READ := cursor.getColumnIndex(StringToJstring('IS_READ'));
BaslangicIdx.LIMIT_PARAM_KEY := cursor.getColumnIndex(StringToJstring('LIMIT_PARAM_KEY'));
BaslangicIdx.NEW := cursor.getColumnIndex(StringToJstring('NEW'));
BaslangicIdx.NUMBER := cursor.getColumnIndex(StringToJstring('NUMBER'));
BaslangicIdx.NUMBER_PRESENTATION := cursor.getColumnIndex(StringToJstring('NUMBER_PRESENTATION'));
BaslangicIdx.OFFSET_PARAM_KEY := cursor.getColumnIndex(StringToJstring('OFFSET_PARAM_KEY'));
BaslangicIdx.PHONE_ACCOUNT_COMPONENT_NAME := cursor.getColumnIndex(StringToJstring('PHONE_ACCOUNT_COMPONENT_NAME'));
BaslangicIdx.PHONE_ACCOUNT_ID := cursor.getColumnIndex(StringToJstring('PHONE_ACCOUNT_ID'));
BaslangicIdx.NUMBER_PRESENTATION := cursor.getColumnIndex(StringToJstring('NUMBER_PRESENTATION'));
BaslangicIdx.TRANSCRIPTION := cursor.getColumnIndex(StringToJstring('TRANSCRIPTION'));
BaslangicIdx.TYPEX := cursor.getColumnIndex(StringToJstring('TYPE'));
while ( cursor.moveToNext ) and ( iSonCagriSay > 0 ) do
begin
strNo := Trim( JStringToString(cursor.getString(BaslangicIdx.NUMBER)) );
strType := Trim( JStringToString(cursor.getString(BaslangicIdx.TYPEX) ) );
strName := '';
if BaslangicIdx.CACHED_NAME <> -1
then strName := Trim( JStringToString(cursor.getString(BaslangicIdx.CACHED_NAME)) );
strDuration := '';
if BaslangicIdx.DURATION <> -1
then strDuration := Trim( JStringToString(cursor.getString(BaslangicIdx.DURATION)) );
case StrToInt(strType) of
1 : strType := 'GELEN No';
2 : strType := 'ARANAN No';
3 : strType := 'CEVAPSIZ ';
5 : strType := 'RED Edil.';
end;
Result := Result + #13#10 + Format('%s:%s %s (Süre:%s sn.)', [ strType, strName, strNo, strDuration]);
Dec(iSonCagriSay);
end;
Dispose(BaslangicIdx);
end;
Kullanımı : ( Sayı vermezseniz tüm çağrılar gelir ) procedure TForm1.Button1Click(Sender: TObject); begin Memo1.Lines.Add( AramaKayitlari( 5 ) ); // Rakam vermezseniz otomatik 99999 olacağından tüm kayıtlar gelir... end;
Saygılarımla
Muharrem ARMAN ![]() |
|
« Önceki Konu | Sonraki Konu »
|
| Konu ile Alakalı Benzer Konular | |||||
| Konular | Yazar | Yorumlar | Okunma | Son Yorum | |
| Delphi FMX, geliştirdiğiniz uygulamanın log kaydını alma işlemi | muratcelik64 | 3 | 599 |
22-03-2026, Saat: 05:00 Son Yorum: ovural |
|
| Delphi FMX ile geliştirilen projenin yedeğini alma işlemi. | muratcelik64 | 1 | 364 |
15-03-2026, Saat: 20:43 Son Yorum: mkysoft |
|
| Telefondan Arama yapmak | barissagir | 4 | 1.125 |
26-06-2025, Saat: 02:26 Son Yorum: barissagir |
|
| Android Kontakt, Telefon numaralarını alma.. | ARM | 1 | 778 |
09-03-2025, Saat: 07:00 Son Yorum: ARM |
|
| Lokasyon Alma | barissagir | 2 | 1.103 |
14-08-2024, Saat: 14:59 Son Yorum: barissagir |
|