Visualizzazione post con etichetta Google. Mostra tutti i post
Visualizzazione post con etichetta Google. Mostra tutti i post

mercoledì 16 ottobre 2013

Problemi con Google Chrome per Linux su Debian

Cercando di installare Google Chrome su una macchina virtuale Debian con la procedura che ha sempre funzionato oggi sono comparsi alcuni errori



di fatto l'installazione con dpkg si blocca a causa di alcune dipendenze non risotel
-----------------------------------------------
 google-chrome-stable : Dipende: lib32gcc1 (>= 1:4.1.1) ma non è installabile
                                     Dipende: lib32stdc++6 (>= 4.6) ma non è installabile
                                     Dipende: libc6-i386 (>= 2.11) ma non è installabile
-----------------------------------------------

La versione beta 31.0.1650.16-1 funziona invece correttamente.

lunedì 12 agosto 2013

Autenticazione OAuth2 con Google

Mediante le API di Google e' possibile effettuare un sistema di autenticazione basato sulle credenziali di Google ovvero si puo' avere un sistema di verifica username/password basato su un account Google

Per fare cio' in Php per prima cosa si deve creare una applicazione andando su questa pagina https://code.google.com/apis/console/?api=plus&pli=1

Si crea una nuova applicazione

 e si ottengono le chiavi per l'utilizzo delle API


a questo punto si puo' scaricare da questo link la libreria Php per interfacciarsi con le API di Google
Attenzione: il redirect Url e' l'indirizzo dello script che gestisce l'autenticazione. Normalmente Google richiede che sia un indirizzo in https ma si puo' cambiare anche in http (non come per le API di Facebook)

Si puo' quindi inserire lo script in Php riportato alla fine di questo post per verificare l'uso delle API modificando i campi evidenziati in giallo con le proprie chiavi

A questo punto richiamando l'indirizzo dello script in un browser si avranno le seguenti schermate

Richiesta di login



Verifica dei permessi richiesti dall'applicazione (in questo caso minimali)




Conferma dell'avvenuta autenticazione




-----------------------------------------------------
<?php

require_once './api/src/Google_Client.php';
require_once './api/src/contrib/Google_Oauth2Service.php';
session_start();

$client = new Google_Client();
$client->setApplicationName("Google UserInfo PHP Starter Application");

$client->setClientId('30253xxxxxx.apps.googleusercontent.com');
$client->setClientSecret('Yq8K0SS-p28tjQxxxxxxxxxx');
$client->setRedirectUri('http://xxxxxx/luca/google/test.php');
$client->setDeveloperKey('AIzaSyDchpWdZDkRtCmdXRANkXjxxxxxxx');
$oauth2 = new Google_Oauth2Service($client);

if (isset($_GET['code'])) {
  $client->authenticate($_GET['code']);
  $_SESSION['token'] = $client->getAccessToken();
  $redirect = 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'];
  header('Location: ' . filter_var($redirect, FILTER_SANITIZE_URL));
  return;
}

if (isset($_SESSION['token'])) {
 $client->setAccessToken($_SESSION['token']);
}

if (isset($_REQUEST['logout'])) {
  unset($_SESSION['token']);
  $client->revokeToken();
}

if ($client->getAccessToken()) {
  $user = $oauth2->userinfo->get();

  // These fields are currently filtered through the PHP sanitize filters.
  // See http://www.php.net/manual/en/filter.filters.sanitize.php
  $email = filter_var($user['email'], FILTER_SANITIZE_EMAIL);
  $img = filter_var($user['picture'], FILTER_VALIDATE_URL);
  $personMarkup = "$email<div><img src='$img?sz=50'></div>";

  // The access token may have been updated lazily.
  $_SESSION['token'] = $client->getAccessToken();
} else {
  $authUrl = $client->createAuthUrl();
}
?>
<!doctype html>
<html>
<head><meta charset="utf-8"></head>
<body>
<header><h1>Google UserInfo Sample App</h1></header>
<?php if(isset($personMarkup)): ?>
<?php print $personMarkup ?>
<?php endif ?>
<?php
  if(isset($authUrl)) {
    print "<a class='login' href='$authUrl'>Connect Me!</a>";
  } else {
   print "<a class='logout' href='?logout'>Logout</a>";
  }
?>
</body></html>

mercoledì 10 luglio 2013

Un riassunto di PlayStore (dopo oltre un anno)

Un piccolo riassunto sulle applicazioni che ho pubblicato sul Play Store

Di queste Geocompass, Soil Color Chart e Well Drawdown Test non sono state pubblicizzate in nessun modo ma in ogni caso sono state individuate dagli utenti e sono anche (diciamo) gradite

Nel periodo di maggior interesse il rapporto tra numero di installazioni e numero di download era di circa il 40-50% ovvero circa la meta' degli utenti che la aveva provata continuava ad utilizzarla. Con il tempo, dato che le applicazioni non sono mantenute ed aggiornate, sono arrivate nuove app piu' interessanti e gli utenti si sono spostati su altri sviluppatori



venerdì 5 luglio 2013

Easter Egg su Amministrazione Google AdSense

Stavo consultando l'amministrazione di AdSense di questo blog (come si puo' vedere in un anno ha fatto 2.9 euro di guadagno..) quando ho lasciato il mouse sull'immagine in basso a destra, il numero 10 che festeggia il compleanno di questa piattaforma


In maniera non prevedibile e' apparsa un barra verde che progressivamente aumentava
Al termine e' comparso il gioco di Pong


La cosa divertente e' che non sapevo della presenza dell'Easter Egg ed e' stato abbastanza sorprendente...per la cronaca e' piuttosto facile vincere

mercoledì 14 novembre 2012

Snail Mail da Google

E' troppo curioso ricevere una lettera di carta da Google per non pubblicarlo


fra parentesi e' un pubblicita' per AdWords




Opencv camera calibration in cpp

Oltre che con uno script Python come visto qui la calibrazione della camera si puo' fare anche con il programma in CPP Questo il proce...