Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.06.2015, 08:58   #1
N0iD
Пользователь
 
Аватар для N0iD
 
Регистрация: 05.05.2010
Сообщений: 50
Восклицание Delphi XE 5 - 8 Android - добавление и удаление контакта.

Приветствую, суть вопроса, каким образом можно добавить контакт (номер телефона и имя) в записную книгу, ну и удалить все контакт\ы. Из того что нашел: Основы Contacts API в Android (ContactsContract) Почитать: http://habrahabr.ru/post/130148/ Обвертка ContactsContract и другое. Скачать: https://github.com/FMXExpress/androi...pascal-wrapper
И кусок кода на С++ http://tagasks.com/how_to_mark_creat...reate_contacts Буду благодарен куску рабочего кода, тема для меня новая, бьюсь 2 недели и все в пустую.

И еще, может кто сталкивался с решением проблемы запуска приложений на эмуляторе Android, скомпилированных в Delphi. Они попросту не запускаются.
N0iD вне форума Ответить с цитированием
Старый 14.06.2015, 13:24   #2
Vapaamies
Ваш К. О.
Участник клуба
 
Аватар для Vapaamies
 
Регистрация: 26.12.2012
Сообщений: 1,770
По умолчанию

Цитата:
Сообщение от N0iD Посмотреть сообщение
И еще, может кто сталкивался с решением проблемы запуска приложений на эмуляторе Android, скомпилированных в Delphi. Они попросту не запускаются.
Надо ждать долго-долго, и это не зависит от мощности компа. Довольно часто бывает, что ждешь-ждешь, и фиг. Это эмулятор такой. Из-за него я решил повременить с мобильной разработкой, вначале нужно на планшет денег накопить, чтобы сразу на нем запускать и отлаживать. Сколько ни спрашивал знакомых -- все говорят, что на реальном устройстве разрабатывают, на эмуляторе нервов не хватает.
Vapaamies вне форума Ответить с цитированием
Старый 14.06.2015, 17:36   #3
N0iD
Пользователь
 
Аватар для N0iD
 
Регистрация: 05.05.2010
Сообщений: 50
По умолчанию

Один из участников сообщества\группы в vk.com со мной поделился куском кода для добавления контакта, за что ему большое спасибо, а я в свою очередь делюсь с вами.
Код:
procedure TContactManager.AddContact(aNumber, aName : String);
var
jsMime,
jsType,
jsName,
jsNumber : JString;
ContentValues : JContentValues;
rawContactURI,
dataURI : Jnet_Uri;
sRawContactID : String;
begin
ContentValues := TJContentValues.Create;
jsType := StringToJString(IntToStr(TJCommonDataKinds_Phone.JavaClass.TYPE_WORK));
jsMime := StringToJString('mimetype'); // Because there is a missing Java interface that defines this.
jsNumber := StringToJString(aNumber);
jsName := StringToJString(aName);

// Add the Person First...
ContentValues := TJContentValues.Create;
ContentValues.putNull(TJSyncStateContract_Columns.JavaClass.ACCOUNT_NAME);
ContentValues.putNull(TJSyncStateContract_Columns.JavaClass.ACCOUNT_TYPE);

rawContactURI := SharedActivityContext.getContentResolver.insert(TJContactsContract_RawContacts.JavaClass.CONTENT_URI, ContentValues);
// e.g. 674
sRawContactID := JStringToString(rawContactURI.getLastPathSegment);

// Then Add the Number...
ContentValues.clear;
ContentValues.put(TJContacts_Entity.JavaClass.RAW_CONTACT_ID,StringToJString(sRawContactID));
ContentValues.put(jsMime,TJCommonDataKinds_Phone.JavaClass.CONTENT_ITEM_TYPE);
ContentValues.put(TJCommonDataKinds_Phone.JavaClass.NUMBER,jsNumber);
dataURI := SharedActivityContext.getContentResolver.insert(TJContactsContract_Data.JavaClass.CONTENT_URI, ContentValues);

// Then Add the Name...
ContentValues.clear;
ContentValues.put(TJContacts_Entity.JavaClass.RAW_CONTACT_ID,StringToJString(sRawContactID));
ContentValues.put(jsMime,TJCommonDataKinds_StructuredName.JavaClass.CONTENT_ITEM_TYPE);
ContentValues.put(TJCommonDataKinds_StructuredName.JavaClass.DISPLAY_NAME,jsName);
dataURI := SharedActivityContext.getContentResolver.insert(TJContactsContract_Data.JavaClass.CONTENT_URI, ContentValues);

if (dataURI <> Nil) then Begin
ShowMessage(aName + ' has been added to your contacts list');
End;
end;
Теперь для полноты картины не хватает удаления контакта.
N0iD вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Удаление, добавление. Woolf42 Базы данных (ADO.NET, LinqToSql, ORM Entity Framework, NHibernate) 13 03.03.2015 14:41
Добавление кнопок на LinearLayout на Java (Android) ruN00b Java Мобильная разработка (Android) 0 30.06.2014 10:07
Добавление/Удаление столбца в таблице БД Delphi Mag-Dark_Elf Помощь студентам 6 09.11.2011 23:53
Добавление контакта MRIM Vlad_IT C# (си шарп) 0 05.10.2011 21:23
Добавление/Удаление CrazyN00b Помощь студентам 0 28.11.2010 17:38