Блог по программированию в среде Delphi

Поиск по блогу

Есть идея по созданию интересной программы?

Опиши тут и я по возможности постараюсь это реализовать специально для тебя! Без $ ))

среда, 21 июля 2010 г.

GoogleLogin Delphi

Доброго времени суток)))

Сегодня мы обсудим компонент googleLogin написанный Владиславом Баженовым aka Vlad (его сайт), ну и я его немного доработал (хотя для кого-то может, сделал его хуже)
Короче как бы то ни было, но я решил рассказать о нем подробнее, чтобы любой программист смог его применить по назначению и получить  максимум из того, что в нем реализовано

Установка компонента в Delphi 2010

Для установки компонента необходимо зайти в папку  googleapi\packages\googleLogin_pack
в ней найти файл GoogleLogin.dpk открыть его в среде Delphi 2010 (он был написан в ней)
в настройках среды прописать переменные окружения, в общем указать путь  (где то на диске)\googleapi\packages\googleLogin_pack\ после чего в менеджере проекта нажать на надписи GoogleLogin.bpl правой клавишей мыши и выбрать пункт меню Install после чего если вы все сделали правильно должно появиться окно с информацией о том, что компонент успешно установлен в систему





Теперь все закрываем  File-Close All
Создаем новый проект, в котором мы хотим использовать только, что установленный компонент
Ищем вкладку WebDelphi.ru моей вкладки там нет))


Выбираем не визуальный компонент TGoogleLogin и кладем его на форму приложения.


Свойства компонента

В Object inspector видим свойства


Свойство  AccountType
Тип аккаунта, для которого выполняется аутентификация. Возможные значения:
GOOGLE (выполнить аутентификацию аккаунта Google)
HOSTED (выполнить аутентификацию размещенного аккаунта)
HOSTED_OR_GOOGLE (выполнить аутентификацию размещенного аккаунта; в случае неудачи выполнить аутентификацию аккаунта Google)
Используйте значение HOSTED_OR_GOOGLE, если вы не уверены, для какого типа аккаунта потребуется выполнить аутентификацию. Если регистрационные данные пользователя соответствуют как аккаунту Google, так и размещенному аккаунту, аутентификация будет выполнена только для размещенного аккаунта.

Свойство AppName
Строка, которая отправляется серверу google  для инициализации приложения, которое выполняет с ним соединение.  Данная строка введена для эмуляции браузера или подобного приложения, на случай если google закроет доступ неизвестным ему приложениям

Свойство Email
Адрес  электронной почты, используемый сервером google, как логин, он необходим для авторизации на сайте.

Свойство Name
Название компонента для обращения к его свойствам и методам в среде delphi

Свойство Password
Пароль пользователя необходимый для авторизации на сайте

Свойство Service
Это список сервисов google в котором нужно выбрать сервис на котором необходимо авторизоваться.

Свойство Tag
Можно использовать для хранения чисел


События компонента

В Object inspector видим события


Событие OnAutorization
Событие, возникающее после выполнения авторизации на сайте и получения всех необходимых данных для последующего их использования в других компонентах GoogleApi которым эти данные необходимы для идентификации пользователя на сайте google или сервисе googl’a

Событие OnDisconnect
Событие возникающее при вызове метода  Disconnect компонента которое выполняет сброс значений полей в свойствах компонента кроме Tag,Name к значениям по умолчанию (тем которые были при бросании компонента на форму).

Событие OnError
Событие возникающее в случае исключительной ситуации при соединении с сервером или сервисом google

Событие OnProgressAutorization
Данное событие было написано специально для любителей визуализации прогресса выполнения каких либо операций или подсчетов в программе, оно показывает прогресс выполнения авторизации, а конкретнее прогресс скачивания станицы с сайта google


Описание событий и их параметров

OnAutorization (const LoginResult: TLoginResult;Result: TResultRec);
LoginResult содержит в случае успешной авторизации lrOk
В других случаях может быть все, что угодно из lrNone, lrOk, lrBadAuthentication, lrNotVerified,
lrTermsNotAgreed, lrCaptchaRequired, lrUnknown, lrAccountDeleted, lrAccountDisabled, lrServiceDisabled, lrServiceUnavailable

Result это структура содержащая непосредственно данные необходимые для идентификации на сайте гугла
 LoginStr: string; // текстовый результат авторизации
 SID: string; // в настоящее время не используется
 LSID: string; // в настоящее время не используется
 Auth: string;


OnError(const ErrorStr: string);
ErrorStr текстовое описание ошибки возникшей при выполнении «авторизации на сайте google»

OnProgressAutorization(const Progress, MaxProgress: Integer);
Progress текущее значение выполняемой задачи
MaxProgress максимальное значение выполняемой задачи

Пример использования компонента можно скачать отсюда

Вторая часть статьи в ней описаны изменения которые произошли в следующих версиях компонента

2 комментария:

  1. Ссылка на файл с каким-то другим проектом...

    ОтветитьУдалить
  2. хм странно((
    но вот тут все
    https://github.com/googleapi/googleapi

    ОтветитьУдалить