Доброго времени суток)))
Сегодня мы обсудим компонент 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 максимальное значение выполняемой задачи
Пример использования компонента можно скачать отсюда
Вторая часть статьи в ней описаны изменения которые произошли в следующих версиях компонента
Ссылка на файл с каким-то другим проектом...
ОтветитьУдалитьхм странно((
ОтветитьУдалитьно вот тут все
https://github.com/googleapi/googleapi