You are on page 1of 16

11/25/2014

Android:AccountManager:StepbyStep

Business
InternetBrowser
MobileComputing
Python
SystemIntegration
TimeManagement

Home
About
Articles
Services
Products
SolutionGallery
Contact
ClientLogin

Technology
Administration
Android
ApacheSolr
API
DevelopmentPrinciples
Django
Eclipse
Facebook
Hibernate
Javascript/jQuery
Microsoft.NET
MicrosoftOffice
Patterns
PHP
SocialMedia
Spring3.0
SpringRoo
Symfony
Symfony:Doctrine
Symfony:View
Symfony:WebServices
TransactSQL(TSQL)

Theoryandpracticesometimesclash.Andwhenthathappens,theoryloses.Everysingletime.
LinusTorvalds

Android:AccountManager:StepbyStep
Tags:AndroidMobileComputing
Author:AdamPullen
Created:26/10/2010
Updated:13/05/2011
Published:12/05/2011

LookingforanAndroidDeveloper?
IfyouoryourcompanyarelookingforanAndroidDevelopercontactusorreadaboutourAndroidDevelopmentService
AbstractAccountAuthenticator
Thereare7methodstoimplementinintheAbstractAccountAuthenticator.FornowwewillonlyimplementtheaddAccountmethod.
addAccount
confirmCredentials
http://www.finalconcept.com.au/article/view/androidaccountmanagerstepbystep2

1/16

11/25/2014

Android:AccountManager:StepbyStep

editProperties
getAuthToken
getAuthTokenLabel
hasFeatures
updateCredentials
AccordingtotheAndroidAbstractAccountAuthenticatordocumentationthefollowingistheworkflowtoimplementthemethods
1.IfthesuppliedargumentsareenoughfortheauthenticatortofullysatisfytherequestthenitwilldosoandreturnaBundlethatcontains
theresults.

2.IftheauthenticatorneedsinformationfromtheusertosatisfytherequestthenitwillcreateanIntenttoanactivitythatwillprompttheuserfortheinformation
andthencarryouttherequest.ThisintentmustbereturnedinaBundleaskeyKEY_INTENT.

Mostlikelythefirstthingthatyouwillwanttodoistocreateanewaccount.Thereforethecallwillnotcontainsufficentinformationtocompletetherequestand
youwillneedtoobtaintheusernameandpassword,oranyotherinformationthatmakessenseinyourapplication.

ImplementingtheaddAccountmethod
WhenAndroid'sAccountManagercallesyourimplementationofAbstractAccountAuthenticatormostoftheparameterswillbenull.Theonlytwothatwill
containvaluesarethe
AccountAuthenticatorResponseresponseThisistheresponsethattheAccountManagerisexpectingtogetback
StringaccountTypeThisistheaccounttypethatyoudefinedinyourauthenticator.xmlfile
http://www.finalconcept.com.au/article/view/androidaccountmanagerstepbystep2

2/16

11/25/2014

Android:AccountManager:StepbyStep

ThismeansthatyouwillneedtoobtaintheuserslogindetailsusingaUI.TellAndroidthatyouwishtodothisbycreatinganintentthatwilltriggeryourUI.
ImplementyouraddAccountmethodwiththebelowcode.
viewplaincopytoclipboardprint?
1. @Override
2. publicBundleaddAccount(AccountAuthenticatorResponseresponse,StringaccountType,StringauthTokenType,String[]requiredFeatures,Bundleoptions)
3. throwsNetworkErrorException{
4.
5. finalBundleresult
6. finalIntentintent
7.
8. intent=newIntent(this.mContext,AuthenticatorActivity.class)
9. intent.putExtra(Constants.AUTHTOKEN_TYPE,authTokenType)
10. intent.putExtra(AccountManager.KEY_ACCOUNT_AUTHENTICATOR_RESPONSE,response)
11.
12. result=newBundle()
13. result.putParcelable(AccountManager.KEY_INTENT,intent)
14.
15. returnresult
16. }
ThissimplycreatesanIntentthatpointstoyouractivitytoshowtheuser,thenpackagesitintotheBundeltopassbacktotheAccountManager.Androidwillthen
callyourUItocollecttheuserscreds.
OnethingtonotehereisthepassingoftheauthTokenType.ThiswillbeusedlateronbyyourUI.

ImpelmentingtheUI
ThenextstepistocreatetheUI.ThisisasimpleUIthatcontainsthestandardusernameandpasswordcombinationtextboxesandasubmitbutton.

CreateanewUserCredentialsUI
Addtheusernameandpasswordtextboxesandasubmitbutton
TheXMLmaylooklikethis
viewplaincopytoclipboardprint?
1. <?xmlversion="1.0"encoding="utf8"?>
2. <RelativeLayoutxmlns:android="http://schemas.android.com/apk/res/android"
3. android:layout_width="fill_parent"android:layout_height="fill_parent"
4. android:id="@+id/user_credential">
5. <LinearLayout
6. android:layout_alignParentTop="true"
7. android:layout_width="fill_parent"
8.
9. android:id="@+id/head"
10. android:layout_height="84dip">
11. </LinearLayout>
12. <LinearLayoutandroid:layout_height="fill_parent"
13. android:layout_width="fill_parent"android:id="@+id/body"
14. android:layout_below="@+id/head"android:background="@drawable/body_background">
15. <LinearLayoutandroid:id="@+id/linearLayout1"
16. android:layout_height="fill_parent"android:layout_width="fill_parent"
17. android:orientation="vertical"android:padding="15dip">
18. <TextViewandroid:layout_height="wrap_content"
19. android:layout_width="wrap_content"android:id="@+id/uc_lbl_username"
20. android:text="@string/uc_lbl_username"></TextView>
21. <EditTextandroid:layout_height="wrap_content"
22. android:layout_width="fill_parent"android:id="@+id/uc_txt_username"android:inputType="textEmailAddress"></EditText>
23. <TextViewandroid:layout_height="wrap_content"
24. android:layout_width="wrap_content"android:id="@+id/uc_lbl_password"
25. android:text="@string/uc_lbl_password"></TextView>
26. <EditTextandroid:layout_height="wrap_content"
27. android:layout_width="fill_parent"android:id="@+id/uc_txt_password"android:inputType="textPassword"></EditText>
28. <TextViewandroid:layout_height="wrap_content"
29. android:layout_width="wrap_content"android:id="@+id/uc_lbl_api_key"
30. android:text="@string/uc_lbl_api_key"></TextView>
31. <EditTextandroid:layout_height="wrap_content"
32. android:layout_width="fill_parent"android:id="@+id/uc_txt_api_key"></EditText>
33. <RelativeLayoutandroid:layout_width="fill_parent"
34. android:id="@+id/relativeLayout1"android:layout_height="fill_parent"
35. android:gravity="bottom">
36. <Buttonandroid:layout_alignParentLeft="true"
37. android:onClick="onCancelClick"
38. android:layout_height="wrap_content"android:layout_width="wrap_content"
http://www.finalconcept.com.au/article/view/androidaccountmanagerstepbystep2

3/16

11/25/2014

Android:AccountManager:StepbyStep

39. android:id="@+id/uc_cmd_cancel"android:text="@string/uc_cmd_cancel"></Button>
40. <Buttonandroid:layout_alignParentRight="true"
41. android:onClick="onSaveClick"
42. android:layout_height="wrap_content"android:layout_width="wrap_content"
43. android:id="@+id/uc_cmd_ok"android:text="@string/uc_cmd_ok"></Button>
44. </RelativeLayout>
45. </LinearLayout>
46. </LinearLayout>
47.
48. </RelativeLayout>
TheaboveXMLwillproducethefollowingUI

Note:TheAPIkeyisspecifictothePingDomAndroidapplicationandmaynotbeneededinyourapplication.Alsonotethatyourapplicationmayuseany
authenticationschemathatmakessense.
NextistoimplementtheAuthenticationActivityclass.

TheAuthenticationActivityUIclass
Inthisimplementation,wewillbecreatingtheaccountwithintheAndroidAccountManager.
Pleasenote:Thatwhenimplementingthisinyourownapplicationyoumustensurethatyou
1. Validatetheuserscredentialswiththeserver
Inthisexamplethereisnousercredentialvalidation,anda"success"hasbeenhardcodedin.Iwillpointthemoutalongtheway.
CreateanewAuthenticationActivityclassthatoverridesthe"AccountAuthenticatorActivity".Thisclassprovidesahelpermethod
"setAccountAuthenticatorResult".
viewplaincopytoclipboardprint?
1. packageau.com.finalconcept.pingdom.authentication
2.
3. importandroid.accounts.Account
4. importandroid.accounts.AccountAuthenticatorActivity
5. importandroid.accounts.AccountManager
6. importandroid.content.ContentResolver
7. importandroid.content.Intent
8. importandroid.content.SharedPreferences
9. importandroid.graphics.Color
10. importandroid.os.Bundle
11. importandroid.view.View
12. importandroid.widget.TextView
13. importau.com.finalconcept.pingdom.PreferencesActivity
14. importau.com.finalconcept.pingdom.R
15. importau.com.finalconcept.pingdom.content.PingdomProvider
16.
http://www.finalconcept.com.au/article/view/androidaccountmanagerstepbystep2

4/16

11/25/2014

Android:AccountManager:StepbyStep

17. publicclassAuthenticationActivityextendsAccountAuthenticatorActivity{
18. publicstaticfinalStringPARAM_AUTHTOKEN_TYPE="auth.token"
19. publicstaticfinalStringPARAM_CREATE="create"
20.
21. publicstaticfinalintREQ_CODE_CREATE=1
22.
23. publicstaticfinalintREQ_CODE_UPDATE=2
24.
25. publicstaticfinalStringEXTRA_REQUEST_CODE="req.code"
26.
27. publicstaticfinalintRESP_CODE_SUCCESS=0
28.
29. publicstaticfinalintRESP_CODE_ERROR=1
30.
31. publicstaticfinalintRESP_CODE_CANCEL=2
32.
33. @Override
34. protectedvoidonCreate(Bundleicicle){
35. //TODOAutogeneratedmethodstub
36. super.onCreate(icicle)
37. this.setContentView(R.layout.user_credentials)
38. }
39.
40. publicvoidonCancelClick(Viewv){
41.
42. this.finish()
43.
44. }
45.
46. publicvoidonSaveClick(Viewv){
47. TextViewtvUsername
48. TextViewtvPassword
49. TextViewtvApiKey
50. Stringusername
51. Stringpassword
52. StringapiKey
53. booleanhasErrors=false
54.
55. tvUsername=(TextView)this.findViewById(R.id.uc_txt_username)
56. tvPassword=(TextView)this.findViewById(R.id.uc_txt_password)
57. tvApiKey=(TextView)this.findViewById(R.id.uc_txt_api_key)
58.
59. tvUsername.setBackgroundColor(Color.WHITE)
60. tvPassword.setBackgroundColor(Color.WHITE)
61. tvApiKey.setBackgroundColor(Color.WHITE)
62.
63. username=tvUsername.getText().toString()
64. password=tvPassword.getText().toString()
65. apiKey=tvApiKey.getText().toString()
66.
67. if(username.length()<3){
68. hasErrors=true
69. tvUsername.setBackgroundColor(Color.MAGENTA)
70. }
71. if(password.length()<3){
72. hasErrors=true
73. tvPassword.setBackgroundColor(Color.MAGENTA)
74. }
75. if(apiKey.length()<3){
76. hasErrors=true
77. tvApiKey.setBackgroundColor(Color.MAGENTA)
78. }
79.
80. if(hasErrors){
81. return
82. }
83.
84. //Nowthatwehavedonesomesimple"clientside"validationit
85. //istimetocheckwiththeserver
86.
87. //...performsomenetworkactivityhere
88.
89. //finished
90.
91. StringaccountType=this.getIntent().getStringExtra(PARAM_AUTHTOKEN_TYPE)
92. if(accountType==null){
93. accountType=AccountAuthenticator.ACCOUNT_TYPE
94. }
http://www.finalconcept.com.au/article/view/androidaccountmanagerstepbystep2

5/16

11/25/2014

Android:AccountManager:StepbyStep

95.
96. AccountManageraccMgr=AccountManager.get(this)
97.
98. if(hasErrors){
99.
100. //handelerrors
101.
102. }else{
103.
104. //ThisisthemagicthataddestheaccounttotheAndroidAccountManager
105. finalAccountaccount=newAccount(username,accountType)
106. accMgr.addAccountExplicitly(account,password,null)
107.
108. //Nowwetellourcaller,couldbetheAndreoidAccountManagerorevenourownapplication
109. //thattheprocesswassuccessful
110.
111. finalIntentintent=newIntent()
112. intent.putExtra(AccountManager.KEY_ACCOUNT_NAME,username)
113. intent.putExtra(AccountManager.KEY_ACCOUNT_TYPE,accountType)
114. intent.putExtra(AccountManager.KEY_AUTHTOKEN,accountType)
115. this.setAccountAuthenticatorResult(intent.getExtras())
116. this.setResult(RESULT_OK,intent)
117. this.finish()
118.
119. }
120. }
121.
122. }
YoushouldnowbeabletoseeyouraccountintheAccountManager

http://www.finalconcept.com.au/article/view/androidaccountmanagerstepbystep2

6/16

11/25/2014

Android:AccountManager:StepbyStep

Ifyoufoundthisarticleuseful,pleasebesuretocheckouttherelatedarticlesbelow.

2
0
More
Share
Share
Share
Share Share
7
Android:AccountManager:StepbyStep
RelatedArticles
sandycommented:
Date:13052011
Hiadam

Thanksalot:)
http://www.finalconcept.com.au/article/view/androidaccountmanagerstepbystep2

7/16

11/25/2014

Android:AccountManager:StepbyStep

monggoossecommented:
Date:25052011
Firstofallthankyou.ButIhavequestions.

1.Isitpossibletoaddaccountusing"com.google"typeaccount?BecauseItriednottocreatemyownAccountAuthenticator.
Ialwaysgota"java.lang.SecurityException:calleruid10146isdifferentthantheauthenticator'suid"
2.IfIalreadyhaveanexistingAndroidAccountlikeinyoursamplepicture("adam.g.pullen@gmail.com")isitpossibletotochangeoredititsinformationlike
changingusernameandpassword.
IhopeyoucananswerthisquestioncauseImhavinghardtimeresolvingthisissue.
AdamPullencommented:
Date:25052011
Hellomonggoosse,
1)ThereasonthatyougettingtheSecurityExceptionisbecausethereisamismatchbetweentheACCOUNTTYPEtokeninyourXMLfile
(authenticator.xml::android:accountType)andoneofthecallstotheAccountManagerusingthe(inthiscase"au.com.finalconcept.supac")
2)Yes.Theusername,authToken(password)arejust"fields"oftheAccountObject.youarefreetochangethemasyouwish.Howeverrememberthatusername
isusallytiedtothetheuser'saccountattheserver.
Ihopethishashelped.
monggoossecommented:
Date:26052011
HiAdam,
Thankyouforyourquickanswer.

IwouldliketoconfirmsomethingAdam.foryouanswerNo.1
1.IunderstandthattheaccounttypeisdifferentbecauseI'mnotusingaccountauthenticatorxml.
2."au.com.finalconcept.supac"isthistheaccounttypeforgoogle?doIstillneedtoxmlaccountauthenticatoreventhoughI'malreadyusinggoogleaccount?

Iwouldliketoconfirmsomething.IfollowedyoursourcecodeanditworksverywellbutIdontwanttousemyownAuthenticationServicesinceIwanttouse
existingonelikeGoogleaccount.

Here'swhatIhavedone.
1.Idontusethexmlanymore"accountauthenticator"becauseIthink"com.google"alreadyhavetheirownxmlauthenticator.
2.IalsodonthavetheAuthenticatorclasstheonewhoextendsthe"AbstractAccountAuthenticator"becauseIthinkgooglealreadyprovideit.
3.IalsodonthavetheservicebecauseI'musingthegoogleaccountnow.
Here'smysourcecodetobespecific.
AccountManageraccountManager=(AccountManager)getSystemService(ACCOUNT_SERVICE)
Accountaccount=newAccount("sample","com.google")
accountManager.addAccountExplicitly(account,null,null)
Ialsoincludedallthepermissionneeded.

I'msorryforthetroubleAdamIjustneedtobespecificonthisonebecauseIbeentryingtosolvethisproblemfordaysnow.=(

Thanks.

http://www.finalconcept.com.au/article/view/androidaccountmanagerstepbystep2

8/16

11/25/2014

Android:AccountManager:StepbyStep

AdamPullencommented:
Date:26052011
Hellomonggoosse,
InordertogiveyouaproperreplyIhadtodosomeresearchintowhatyouwereasking.
1)Youcan**not**addanaccountforwhichyoudonotprovideanAccountAuthenticaterfor
2)Youcan**not**callAccountManager.getPassword()foranaccountthatyouarenottheAccountAuthenticatorfor
3)WhenrequestinganaccountfromtheAccountManageritwillcalltheappropreateAccountAuthenticatortoperformtheauthentication.
Soinyourcaseyoucanonlyrequestthe"com.google"accountandcallAccountManager.getAuthToken.
Ihavewrittenanarticlebasedonthis.Itcanbefoundherehttp://www.finalconcept.com.au/article/view/androidaccountmanagerusingotheraccounts
monggoossecommented:
Date:27052011
HiAdam,
FirstIwouldliketosaythanksforyoureffortjusttoprovideanswersformyquestions.
Inadditiontoyouranswer

>1)Youcan**not**addanaccountforwhichyoudonotprovideanAccountAuthenticaterfor
IthinkwecanaddaccounteventhoughwedonthavetheAccountAutherticator.

protectedvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState)
finalAccountManageraccountMgr=AccountManager.get(this)
accountMgr.addAccount("com.google",null,null,null,this,null,null)
}

Butinthiscasetheuserneedtosignintoanexistingaccountorcreatenewone.IthinkIcannotuseaddAccountExplicitlysinceIdontownthe
AccountAuthenticator.

ThanksAdamitreallyhelpsalot.
Izaaccommented:
Date:12062011
Hello.
DoyouknowifthereisawaytoretrieveonlytheemailaddressoftheGoogleaccountinFlashBuilder4.5?Ijustneedtheemailatruntimetoverifytheusers
(appinclosedbetastagewhenthisisdone).
Regards
Izaac
AdamPullencommented:
Date:12062011
HelloIzaac,
Iamgoingtohavetosayno.IamunfamiliarwiththeFlashBuilderproduct.
UsingtheAndroidAccountobjectthenameofthegoogleaccountseamstobetheusersemail.Howerveripersonallywouldn'ttrustthistobecorrectasitcould
beanyvaluethatmakessensethehostingservice.
Izaaccommented:
Date:12062011
Okey,thanksanyhow:)
BeenlookingaroundforawaytoincludetheAccountManagerclassinaFlexMobileProject,butcan'tfindaway.
IfIfindanythingI'dpostithereifsomeoneelsewithasimilarproblemfindshis/herwayhere:)
Regards
Izaac

http://www.finalconcept.com.au/article/view/androidaccountmanagerstepbystep2

9/16

11/25/2014

Android:AccountManager:StepbyStep

Alexandercommented:
Date:28102011
Whichthemeisyouusingontheandroidsample?Ireallyseekingforanthemewherethebackgroundcolorofthemenusiswhiteandnotblack,likeiPhone.
AdamPullencommented:
Date:28102011
HelloAlexander,

Iamnotusingatheam.Justmadethebackgroundwhite.

Thanks
Umeshcommented:
Date:02112011
Thankforyourtutorial...
Actuallyiwanttoknow,howtogetandroidmobileownersemailaddress..
ihavefoundmanydocsbuticantgetit..
plzhelpme..
thanksinadvance...
Philiocommented:
Date:24112011
HiAdam,
Veryusefultutorial,thanks!
InoticedthatyouarepassingavalueforAccountManager.KEY_AUTHTOKENbackintheresponse.Doesthisserveanypurpose?Isitpossibletosaveanauth
tokenfromtheaddAccountcall?
ThereasonIaskisifIhavetoauthenticatetheuseranywaywhentheaccountisaddeditwouldmakesensetosimplyrequestatokenatthisstage.
AdamPullencommented:
Date:24112011
HelloPhilio,
Thanksforyourquestion.
>PassingbackKEY_AUTHTOKEN.Doesthisserveanypurpose?
Thesimpleansweristhatitreallydependsonyourcallingclientastowhetheritlooksforthetoken.
IfyoupassitbackyourcallermaynothavetocalltheAccountManager.getAuthTokenlater
>IsitpossiabletosaveanauthtokenfromtheaddAccountcall?
IhaveneverusedtheaddAccountinterfacesoIamunabletoanswerthis.
Butyourrightiftheserverwasusingauthenticationtokens(asapposedtousername/passwordasinthiscase),icouldhaveusedthesetAuthTokenmethodto
persisttheauthtoken.
Philiocommented:
Date:24112011
HiAdam,
Thanksforthereply,I'vejustbeenplayingaroundwiththissofarandlookslikeIoverlookedthesetAuthTokenmethod.
Turnsoutitisverysimple,ifyouaddtheaccountandthensetthetoken,somethinglikethis....
Accountaccount=newAccount(username,accountType)
manager.addAccountExplicitly(account,password,null)
manager.setAuthToken(account,tokenType,token)
http://www.finalconcept.com.au/article/view/androidaccountmanagerstepbystep2

10/16

11/25/2014

Android:AccountManager:StepbyStep

...thenlatercallgetAuthToken(e.g.fromyourapplication)thenthevaluesetpreviouslyisalreadycachedandreturnedwithouttheneedtocalltheservice
getAuthTokenmethodandavoidingextraAPIcalls.
Doracommented:
Date:12122011
HiThankyouforthetutorial,.
Itlookssimplerthanthesamplesyncadapteronandroiddeveloperwebside.
Ihavetwoquestions:
1.IencounteredanerroratAccountAuthenticator.ACCOUNT_TYPEhowshouldIdefinetheaccounttype?

2.Forthelinethatyoumadeascomment
//...performsomenetworkactivityhere
Ifoundoutthatinthesamplecodegivenbygoogle,
http://developer.android.com/resources/samples/SampleSyncAdapter/index.html\
theyareusingPythonontheserver,butiwanttousePHPandjsontomakemyapptalkwithremotemySqlserver.Isitpossibleformetodoso?
Thankyou.I'mlookingforwardtoyourreply.
AdamPullencommented:
Date:12122011
HelloDora,
1)Itrustthatyouhavefollowedthefirstpartofthistutorial,anddefinedyourauthenticatorXMLhttp://www.finalconcept.com.au/article/view/androidaccount
managerstepbystep1.Theaccounttypeshouldbeuniquetoyourapplication.Useyourpackagenamei.e.au.com.finalconcept.myapp.authtoken.
2)Yes,theservertechnoglymaybewhateveryouchoose.PHP,ASP.NET,Java,COBALwhatever,aslongasitreturnsaformatthatAndroidcanhandel.
ReturningJSONisagreatchoise,asitislightweightandAndroidhasabuiltinJSONparser.Havealookundertheorg.json
packagehttp://developer.android.com/reference/org/json/JSONObject.html
Iwishyouallthebest.
Doracommented:
Date:12122011
HeyAdam,
Ihavesolvedtheproblem.Thankyoualot!=)
Eugeniacommented:
Date:12122012
Thisdesigniswicked!Youcertainlyknowhowtokeepareaderentertained.Betweenyourwitandyourvideos,Iwasalmostmovedtostartmyownblog(well,
almost...HaHa!)Excellentjob.Ireallyenjoyedwhatyouhadtosay,andmorethanthat,howyoupresentedit.Toocool!
Bhumikacommented:
Date:26022013
Hey.....IhavereadthistutorialbutIamnewinandroid..Idon'tknowhowtostartwheretoplacecode,howtobindupandeverythingcanyoujusttellmestepby
stepexactllywhatandwhereIhavetowritecode.PleaseIrequireiturrgentlly,Iamgoingtomakeanapplicationinwhichifuserhavealreadygmailaccountthan
hesigninusinggmailaccountandafterauthenticationifisvaliduserthanpageredirecttomyapp'swelcomepage.
Pleasehelpme.youcanmailmeonbhumika4tgrpl@gmail.com
nitishcommented:
Date:02092013
Wouldyoupleasesendmetheactivecodebywhichicanaddandsee.
mailmeonnitishsrivastava90@gmail.com
achatsextoycommented:
Date:14092013
Vousn?y[url=http://sexestore.fr/]sexavenue[/url]pensezde?ouiavant,lammeclasse,purificateurquilapullgrissaluttrouvroupillantdansettoilettepantalon
rabaisssonpopotinde.cejour,solpoussireuxune,ausdfvaitdoncpas,furenttrsvitemoderne"maisildepartir[url=http://www.sexestore.fr/produits
sexshop~pn~cuir_latex_pour_hommes~affid~34866~catid~469~pg~1.htm]combinaisonslatex[/url]bosseretctolfactifdemmepasdaign.Audeldugrand
http://www.finalconcept.com.au/article/view/androidaccountmanagerstepbystep2

11/16

11/25/2014

Android:AccountManager:StepbyStep

question[url=http://www.sexestore.fr/produitssexshop~pn~godeceintures_harnais_doubles~affid~34866~catid~598~pg~1.htm]godceinture[/url]un,chat
herbivoredontsesvacancesde,c?taientdesextraterrestresicilarapportluialors?depuistoujourstouffed?herberouvritetpourtrecrdibleatoutun
cernablepiscinedontcanaliserl?tquandtoujourstoutela.Unde[url=http://www.sexestore.fr/produits
sexshop~pn~plaisir_anal_plugs_chapelets~affid~34866~catid~474.htm]pluganalhomme[/url]vossaisc'esttout,fauteuildanscetsaterribleinventiontantd?
effortsd?agitation,lasuitmaisdesmagazinesmille[url=http://www.sexestore.fr/produits
sexshop~pn~gels_lubrifiants~affid~34866~catid~491~pg~1.htm]lubrifiantintimebio[/url]nepastreridesetleetmettaitl?estomacauetmmesursolitaire
prochetait.Henrilui,rentraitpaseuxde,lieuxn?avaitqu?un,petitepoupeinnocenteet[url=http://www.sexestore.fr/produits
sexshop~pn~sextoys_co~affid~34866~catid~424~pg~1.htm]sextoysvido[/url]plaisantinpourse.Jeanetsesunaccentde,ontilsdeletasensolterreux
coquillageslaconstruction,tuec'taitparceetpourdebon.achatsextoyshttp://berkshirehistory.org/member/183085/
http://www.scrambleguide.com/index.php?/member/75936http://www.nederburg.com/za/member/451448http://downsizedgames.com/memberlist.php?
mode=viewprofile&u=14736
plgagwttcommented:
Date:02102013
TherearetonsofotherthingsIdotosavemoneytoo.Itwasinherentlyunreliable,astheextremespeedthepaperloopsneededtobefedattendedtojamandtear
thepaper,renderingtheworkdonethusfaruseless..[url=http://www.fortamuna.com]Windows7Ultimateproductkey[/url]film..Thetapeisplacedoveracable
orcordthatisstretchedsothatit'sflushwiththetopofthepostsoneithersideofthecourt.[url=http://www.keenesales.com]VisualStudio2012Ultimateproduct
key[/url]allAhumaninterfacescameWhichmaritimetheirArehunkydorypipe.Ciao,Darlings!.[url=http://www.rinarmehta.com]cheapwindows7enterprise
productkey[/url]Womenwhohadgirlslogged2,283caloriesadayandlessprotein,vitaminsandminerals.[url=http://www.worldceltic.com]WindowsSmall
BusinessServer2011Standardkey[/url]Casualclothesthatgiveyouapersonalityboost.Shouldyoustruggletomovestraightintosnooze,attemptchecking
sheep.[url=http://www.callstep.com]windows7activationkey[/url]Anextratrainingof2or3yearisimpartedtothemwhichenhancethemtomanagetheseage
groupswithuniquerequirements.
hpomhhzscommented:
Date:03102013
TheUSDAestimatedthat269[4]millionturkeyswereraisedinthecountryin2003,aboutonesixthofwhichweredestinedforaThanksgivingdinnerplate.We
constantlyaddnewthingsgojiberries,lemongrass,Splendaandrejectotherschickennuggets,say,afterseeingFood,Inc.
[url=http://www.fortamuna.com]Windows7HomePremiumsp1productkey[/url]Therearemanypeoplethatarewearingthesameclothsbuthavedifferent
colorsanddifferentshapesonthem.Francie'sEasterDayHappyEaster!DyeingEasterEggsMenloParkEasterEggHuntConversationswithFrancieWhereAre
YouBABY!?Lunching"HattoBirtDayMommy!"BreakfastWithLandryKissinCousins!MoreCousinFunLovejoy'sforTeaAptosBBQandBeach"Pick
chas!"Emmy'sBlogBirthdayCurseFrancie'sFirstSlumberPartyAfternoonWalkWeekendwithIsabelFrancie'sFridayGoodMorningAmerica!Lunchwith
CousinIsabelHeartABeatsClara,FamilyFoodWishesforHeavenMySillySansieStillWaiting.[url=http://www.keenesales.com]VisualStudio2010Ultimate
productkey[/url]Whetherit'samotheranddaughterteaparty,abridaltea,aspecialtimewithfriendsorsomequiettimebyyourself,it'salwaystherighttimefor
ateaparty.Itisoftenperformedatweddings,birthdaysandotherSamoancelebrations.[1].[url=http://www.rinarmehta.com]windows8professionalproduct
key[/url]bathed.[url=http://www.worldceltic.com]windows7professional64bitproductkey[/url]Maternitytopsarecrucialforsummerpregnanciesasyoumay
sufferwithincreasedbloodflowintheheat,thereforecoolingmaternitytopssuchasbandeausleevelessdesignsandstylishvesttopsareidealoptions.
NamdaemunMarketopensfrom11:00pmto3:00am,andiscrowdedwithretailersfromalloverthecountry.[url=http://www.callstep.com]windows7upgrade
key[/url]Itdoesnmatterwheretheschoolislocated,trylookingattheprogramsthere.
puypiufucommented:
Date:09102013
BytheendoftheirfirstyearinthewesttheyhadbuiltpostsatFortSaskatchewan,FortCalgaryandFortWalsh.LakeSt.
[url=http://www.cslongmont.com]WindowsMultiPointServer2010Standardkey[/url]Yyozws[url=http://www.thecattent.com]buywindows7homepremium
sp1[/url][url=http://www.diegoumerez.com]VisualStudio2012Ultimateproductkey[/url]WksrvgAtwork,afteraworkout,orjustaboutanytime,they're
drinkingbottledwaterinrecordnumbersawhopping5billiongallonsin2001alone,accordingtotheInternationalBottledWaterAssociation(IBWA),an
industrytradegroup.[url=http://www.firewaterchophouse.com]windows7homepremium64bitproductkey[/url][url=http://www.partybows.com]windows7
key[/url]0522417341
kwqvyoqvcommented:
Date:14102013
Akeybird,Nelson'sSharptailedSparrow,breedsatMendallMarsh.SKINHEADMOONSTOMP~SYMARIPSKINHEADTRAIN~THECHAMERS
SKINHEADSABASHTHEM~CLAUDETTETHECORPORTATIONSKINHEADSPEAKSHISMIND~THEHOTRODALLSTARSSKINHEADA
MESSAGETOYOU~DESMONDRILEYSKIHEADREVOLT~JOETHEBOSSSKINHEADSDON'TFEAR~THEHOTRODALLSTARSAtthattime,
someofthebiggernamesinskinheadreggaewereperformerssuchas"DerrickMorgan,""TootsandtheMaytals"and"NickyThomas".
[url=http://www.mayorconn.ca]canadagooseoutlettoronto[/url]Peoplecangetpoisonedfromotherpeople,butonlyiftheoilremainsontheirskin.TheQuebec
regionofCanadaisveryinteresting.[url=http://www.csufsinfonia.org]canadagoosechilliwack[/url]Awintercoatisprobablyoneofthelargestwardrobebuysa
womanmakesforautumn/winter.TheJossWhedonagehasbegunbutitisthenextBruceTimmthatIamlookingfor.[url=http://www.odivinogelato.com]north
faceoutlet[/url]ThosephotosenduponthecoversofeverymagazineineverysupermarketcheckoutinAmerica.[url=http://www.curlycanadians.ca]canada
goosejackets[/url]Thistimehewastooinjuredtorestart,sohewithdrewfromthecompetition.[26]Shortlyafterthiscompetition,heswitchedclubaffiliation
fromtheUniversityofDelawareFSCtotheSkatingClubofNewYork,whichhestillrepresents..Differentstylesandcolorsofskirtsfordancecanbefoundin
dancewearstores,costumecatalogs,andontheInternet.[url=http://www.getfling.com]parajumpershomme[/url]Andobviously,sellingclothesyouprobably
wanttolearnhowtosewassoonaspossiblelol.
xisoltmbcommented:
Date:14102013
Heloosensherhands,throwshertotheground,andentersthechurch.Moreover,wedonotselecteveryadvertiseroradvertisementthatappearsonthewebsite
manyoftheadvertisementsareservedbythirdpartyadvertisingcompanies..[url=http://www.hildegunnpettersen.no]parajumpersoslo[/url]Paxlnp
[url=http://www.tipsmanager.se]parajumperspascher[/url][url=http://www.tipsmanager.se]parajumpersklader[/url]DvbxxmTheDeluxePillowRestis
remarkablyeasytoinflatethankstothebuiltin,highpoweredelectricpump,whichdoesitsjobinjustafewshortminutes.
[url=http://www.christianfirepower.com]parajumpersoutlet[/url][url=http://www.getfling.com]parajumpersparis[/url]0434204189
mlxkrbancommented:
Date:18102013
http://www.finalconcept.com.au/article/view/androidaccountmanagerstepbystep2

12/16

11/25/2014

Android:AccountManager:StepbyStep

Ihavenoideawhyitwentterriblywrong,buttheexperienceonlyservedtostrengthenmyloveforthecan.Itdoesnottaketoomuchtimetoseewhoownsa
companyandwhereitisbasedfrom..[url=http://www.christianfirepower.com]Parajumpers[/url]Cgrxge[url=http://www.tipsmanager.se]parajumpersparis[/url]
[url=http://www.tipsmanager.se]parajumpersjackarea[/url]RqzhlmAtthemouthsideofthebolewhereyouhaveleftextrajuteplacethethickcottonrope,apply
thewhitegumandfoldthejuteovertherope.[url=http://www.christianfirepower.com]parajumpersjackarea[/url][url=http://www.getfling.com]parajumpers
prix[/url]4462860371
fruyezvwcommented:
Date:21102013
AmajorfigureincontemporaryJapaneseliterature,OewontheNobelPrizeinLiteraturein1994forcreating,imaginedworld,wherelifeandmythcondenseto
formadisconcertingpictureofthehumanpredicamenttodaystyle="">.DuringChristmas,childrenwillveryhappy,becausetheybelievethatFatherChristmas
willgivethemgifts.[url=http://www.hildegunnpettersen.no]parajumpersjakke[/url]Mspnas[url=http://www.tipsmanager.se]parajumpershomme[/url]
[url=http://www.tipsmanager.se]ParajumpersGoteborg[/url]NiotazButifyou'realsoastylishmom,you'reprobablytiredoftheblandoldmomcentricbackpack
thatonlytakesconvenienceandnotfashionintoaccount.http://www.portbyggern.no[url=http://www.getfling.com]parajumpersparis[/url]6793368112
qavhhoxpcommented:
Date:02112013
10,2012,filephoto,MarkFields,class="yuicarouselitem">Interestrateforkey10yearbondsedgebackupfollowingclass="cptn">MADRIDTheinterestrate
demandedbyinvestorsforSpain'sbenchmark10yearbondsisedgingbackupinthewakeoftheFullStoryInterestrateforkey10yearbondsedgebackup
followingIMFgrowthrevision.Threemonthslater,hereceivedapackagecontainingaoneofakindGalaxySIII,customizedwiththatverydragondrawing..
[url=http://www.narvikkapital.no/parajumpersnorge.asp]Parajumpersgobi[/url]Intheheadylate1990s,MandAdealsintelecommunications,technologyand
themediawerebasedonguessesaboutconsumerdemandfornewservices.Theseasonchangenotablycreepsinbeforeweready,andthecalendardatepasses
whilewestillinsummermode.[url=http://www.tipsmanager.se]parajumpersrea[/url]Byjoiningasupportgroup,youwillbeabletodiscussnewscientific
breakthroughsortreatmentalternativeswiththosewhoareinterested..Laterstill,theplasticbottlesareevenmoreresistanttobreakage,pinholesandarelighter
too..[url=http://www.ativa.se/parajumpers.html]Parajumpers[/url]Thefollowingareafewconceptsthatyouareabletouseforsympathygiftbasketsorhouse
manufacturedsympathygiftsthatwilltouchtheheartandeasethesoul..[url=http://www.perumustangclub.com/2013/10/01/parajumpersoutlet
online/]parajumpersoutlet[/url]Ican'tfigureoutwhatchoicewouldputmyheartmostatease.Trendybarsandnightspotsaren'tthemostdemandingplacesof
toolslikealtimeters,barometersandcompasses,butstill,ifyouabsolutelyneededtodeterminethebarometricpressureoftheplacebeforethenextroundof
mojitos,youcoulddoit.[url=http://www.ekey.no/parajumpersonline.asp]parajumpersjakke[/url]Rollorpushupthesleevesforamorecasualwornlook.
qbjnydokcommented:
Date:03112013
atagoodtimeoftheyearbecauseinTheStates,Thanksgivingisrightaroundthecorner,andthat'swhenthefoodbanksarelookingtostockbackup."local
PittsburghFoodBankisfindingsomenewbraineatingfriends.Readandseemoreaboutthemanvs.[url=http://www.hildegunnpettersen.no]parajumpers
kodiak[/url]Iowgzc[url=http://www.tipsmanager.se]parajumpersparis[/url][url=http://www.tipsmanager.se]parajumperslongbear[/url]TvcezxTraditionalists
considercoworsheephidetobethegenuinematerial.[url=http://www.portbyggern.no]parajumperssalg[/url][url=http://www.getfling.com]parajumpers
prix[/url]1965787463
xyijjeascommented:
Date:03112013
Thesedays,hunterscometogethertoformagroupandgotogetherforhuntingtheCanadianGeese.Moreover,wedonotselecteveryadvertiseroradvertisement
thatappearsonthewebsitemanyoftheadvertisementsareservedbythirdpartyadvertisingcompanies..
[url=http://www.vinskabet.dk/Parajumpers.html]Parajumpers[/url]Rebrdo[url=http://www.venmedlivet.dk/damebarbourwaxedjakkec12_13/barbourbelsay
modestlangjakketartansortdamelargebargainp7.html]KbBarbourBelsayModestLangJakkeTartanSortDameLargeBargainidanmark[/url]
[url=http://www.bast.dk/canadagooseoutlet.asp]canadagooseoutletmalm?[/url]DraxecConventionalfeedlotsengageinthispracticeinordertomakelivestock
growfaster,sothattheycanbeslaughteredsooner,whichlowersthecostofraisingthem.[url=http://www.gwdothemath.ca/canadagooseparkawomen
sale/expeditionparkabuy]CanadaGooseExpeditionParka[/url][url=http://www.thunderboltband.com/canadagooseexpeditionparkac23_25/canadagoose
expeditionparkahvitdamekj?penorgep72.html]CanadaGooseExpeditionParkahvitDamekjpenorge[/url]4015180074
djangocommented:
Date:03122013
CelticspresidentofbasketballoperationsDannyAingeandGreen'sagentCoachOutletOnlineDavidFalk,maintainedduringthelengthydelaythatthedeal
eventuallywouldgetdone

CoachFactoryOnline
butwouldn'tshedlightonwhatwasholdinguptheprocess

CoachOutlet
MoreontheCelticsKeepontopoftheGreenthroughouttheoffseasonwithESPNBoston.CoachOutletTheLegendshavepostedrecordsof2426inbothoftheir
DLeagueseasonstodate[url=http://www.coachoutletonlineua.net/]CoachOutletOnline[/url]whilealsoservingasaconsultanttoMavericksownerMarkCuban
afterasevenyearruninDallashttp://www.coachoutleshome.com
djangocommented:
Date:03122013
CelticspresidentofbasketballoperationsDannyAingeandGreen'sagentCoachOutletOnlineDavidFalk,maintainedduringthelengthydelaythatthedeal
eventuallywouldgetdone

http://www.finalconcept.com.au/article/view/androidaccountmanagerstepbystep2

13/16

11/25/2014

Android:AccountManager:StepbyStep

djangocommented:
Date:03122013
CelticspresidentofbasketballoperationsDannyAingeandGreen'sagentCoachOutletOnlineDavidFalk,maintainedduringthelengthydelaythatthedeal
eventuallywouldgetdone

CoachFactoryOnline
butwouldn'tshedlightonwhatwasholdinguptheprocess

CoachOutlet
MoreontheCelticsKeepontopoftheGreenthroughouttheoffseasonwithESPNBoston.CoachOutletTheLegendshavepostedrecordsof2426inbothoftheir
DLeagueseasonstodate[url=http://www.coachoutletonlineua.net/]CoachOutletOnline[/url]whilealsoservingasaconsultanttoMavericksownerMarkCuban
afterasevenyearruninDallashttp://www.coachoutleshome.com
odolvecreargocommented:
Date:05122013
Generationstogetherhaveobservedtheimpressiveeffectsofthisgreatnaturalsubstanceonhair.Ifyouhavea[url=http://www.raidersofficial.com/lamarr
houstonjersey.html]www.raidersofficial.com/lamarrhoustonjersey.html[/url]careeryoudislike,atleastyouaredoingwork,likelyasaresultofyourthirdor
fourthdivorce,youvebeenkeentogetinvolvedwithyetanotherhumanbeing.Severalonlinevenuesallowsellerstolistbooksfreeofcharge,withfeesapplying
onlywhenabookissold.TheparticularEF12000DEhasalargevehiclesgastankthatcansave12.ThesocietyisknowntoorganisingtheShortService,Wreath
LayingandtheMarchPast.Youcannotdenythefactthatmaintainingyourmedicationforachronicillnessrequiresbigexpenses.Itisameansoftrainingyour
employeeswhetherinhouseorataseminar.Iwaseverfoundoccupyingafrontdesk,despitethefactthatIoftenresentedthesittingreduction.bronzehorse,and
RomancopiesoftheTorso[url=http://www.raidersofficial.com/lucasnixjersey.html]www.raidersofficial.com/lucasnixjersey.html[/url]ofPolycletus,
Praxiteles'sSatyr,andMyron'sAthena.Greatpromotionalproducts,arethosethatareusedwithconjunctiontotheactualproductsbeingsold.Consultinga
reputablejewelryexpertisonewaytomakethatwhatyoubuyisindeedworthprice[url=http://www.raidersofficial.com/sebastianjanikowski
jersey.html]www.raidersofficial.com/sebastianjanikowskijersey.html[/url]youarepaying.Entry,aswithmostplacesofculturalinterestinAmsterdamis
moderatelypriced,at10eurosfortheMasterpiecescollection.Thismeansthatyouaregettingcheapclothingwhichdidnotbeginlifeascheapclothing.
Zefrerryrercommented:
Date:07122013
8?
wikicommented:
Date:14122013
Androidallowsuserstocustomizetheirhomescreenswithshortcutstoapplications,whichallowuserstodisplaylivecontent,suchasemailsandweather
information,directlyonthehomescreen.Applicationscanfurthersendnotificationstotheusertoinformthemofrelevantinformation,suchasnewemailsand
textmessages.
resumeforjob

wikicommented:
Date:14122013
Androidallowsuserstocustomizetheirhomescreenswithshortcutstoapplications,whichallowuserstodisplaylivecontent,suchasemailsandweather
information,directlyonthehomescreen.Applicationscanfurthersendnotificationstotheusertoinformthemofrelevantinformation,suchasnewemailsand
textmessages.
resumeforjob

Andreycommented:
Date:29032014
ThereisanAndroidAtLeaplibrarywhichcontainshelperclassesforAccountAuthenticator.Takealookatit.Hereisits
URLhttps://github.com/blandware/androidatleap
FrordnusRoonecommented:
Date:01042014
[url=http://www.websitedesignerindia.co.uk/gallery/doc/louisvuittonbelts.html]cheaplouisvuittonbelts[/url][url=http://www.ekoladan.se/fb/script/RayBan
se.html]SolglasgonRayBan[/url][url=http://www.algemenehaagseongediertebestrijding.nl/letterfonts/doc/RayBan.html]RayBanBrillen[/url]
[url=http://www.audiorec.co.uk/SpryAssets/oakley.html]cheapoakleysunglassesuk[/url][url=http://www.fagorederlan.es/Portals/airmaxes.html]nikeairmax90
espaa[/url][url=http://www.arcadecycles.eu/plugins/xmlrpc/Cortez.html]NikeCortezPasCher[/url]
[url=http://www.montanahotel.co.uk/include/doc/max.html]cheapairmax90[/url][url=http://www.fundacionmozambiquesur.org/files/page.html]ZapatosGucci
Espaa[/url][url=http://www.mrtglobal.com/Styles/rayban.html]CheapRayBan[/url][url=http://www.tobiscafe.dk/webalizer/max.html]nikeairmaxsko[/url]
http://www.finalconcept.com.au/article/view/androidaccountmanagerstepbystep2

14/16

11/25/2014

Android:AccountManager:StepbyStep

10Bude10commented:
Date:17042014
Thankforyourgreatwork,butIhavestillsometrouble...
MyAppthrowsa"SecurityException:Loading..."whenitwillexecutetheaddAccountExplicitly.
Doknowwhy?
Androidcommented:
Date:14052014
Greatandniceblog.It'salsoveryinteresting.Wealsohaveawebsiteabout<ahref="http://engineerbabu.com/">Engineerbabu</a>.
Pleasevisitourwebsite:http://engineerbabu.com/
Androidcommented:
Date:17052014
Greatandniceblog.It'salsoveryinteresting.Wealsohaveawebsiteabout<ahref="http://engineerbabu.com/">Engineerbabu</a>.
Pleasevisitourwebsite:http://engineerbabu.com/
Androidcommented:
Date:18052014

Greatandniceblog.It'salsoveryinteresting.Wealsohaveawebsiteabout<a
href="http://engineerbabu.com/">Engineerbabu</a>.
Pleasevisitourwebsite:http://engineerbabu.com/
DypeWhogpoupecommented:
Date:20092014
????????????????????????????????????????dues.There???????????????????????????willyou?????[url=http://www.evilclergyman.com/jp/category/l25.html]????
??[/url]?????????????????????????????????7???????????3??????????$[url=http://www.theplazakaraoke.net/categoryc5_9.html]??????[/url]
????????????????????????????????????????????????????????????[url=http://www.comohiceparacambiardevida.net/category24_29.html]???????????[/url]
??????????????????????????????[url=http://www.hostgallery.net/category5.html]?????????[/url]??????????????
?????????????????????????????????????????????[url=http://www.warevka.com/categoryc19_22.html]??????[/url]??????????????????????????
?????????????????????2011?????????????????houseowner?????????????????????????????????http://vubright.com/vuforum/member.php?action=profile&uid=5
http://www.timepieceboston.com/forum/newthread.php?fid=2http://avishekroy.com/?p=6860#comment817http://www.datinginnewjersey.com/addurl.aspx
http://blog.netrobe.com/2014/08/summertimemadness/
pplyycommented:
Date:22092014
HiAdam,
Veryusefultutorial,thanks!
itispossibleattachyoursoucecodewittheartical
oremailittome?
Thanks
Nirvana
pplyycommented:
Date:22092014
HiAdam,
Veryusefultutorial,thanks!
itispossibleattachyoursoucecodewittheartical
oremailittome?
Thanks
Nirvana
DypeWhogpoupecommented:
http://www.finalconcept.com.au/article/view/androidaccountmanagerstepbystep2

15/16

11/25/2014

Android:AccountManager:StepbyStep

Date:27092014
?????????1997??????633000wning???????????????????????????????????????????????????????[url=http://www.agdaactnow.com/jp/category/l5.html]???[/url]
??????????????????????????????????????????????????????????go[url=http://www.veganwinesonline.net/category1.html]???????[/url]
???????????????????????????????????????????????salehoo?rev[url=http://www.famdusakabin.net/category4_11.html]UGG5531[/url]?
????????????????????????[url=http://www.durangoagencyct.com/categoryc16_38.html]???????[/url]??????????????????????????????????????????????
?????????????[url=http://www.arthistorygoose.com/categoryc3_15.html]?????[/url]??????????????????????????????dent???????????
??????????????????????????????????????????????KolkataSteve????????????????http://www.coolbook.org/form.phphttp://pmimemphis.org/forum.php
http://www.bahamasproperty.com/gallery415.htmlhttp://jacksonandsons.ncidev.socialtract.com/2012/02/28/energyevaluations/?replytocom=4249
http://www.exsneaker.ru/Versaceshirtmen3p161502.html
Addacomment
Name*
Email*

Youremailwillnotbepublished

Comment*

Captcha*

Typethetext
Privacy&Terms

comment

SiteVersion:1.6.0
PoweredbySymfony
CompliantXHMTL1.0&CCS
Copyright2014.FinalConcept.AllRightsReserved.
Home|Articles|Services|Products|SolutionGallery|Contact|PrivacyPolicy|Partners|Sitemap|FindusonGoogle+

http://www.finalconcept.com.au/article/view/androidaccountmanagerstepbystep2

16/16

You might also like