/* Ċ Ġ* ĠCopyright Ġ( c ) Ġ 2 0 2 0 ĠG i org io ĠAnt oni oli Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġcom . fon de sa . k permissions . extension Ċ Ċ import Ġandroid . app . Activity Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġandroidx . fragment . app . Fragment Activity Ċ import Ġcom . fon de sa . k permissions . builder . Compat Permission RequestBuilder Ċ import Ġcom . fon de sa . k permissions . builder . Permission RequestBuilder Ċ import Ġcom . fon de sa . k permissions . request . runtime . Result Launcher Runtime Permission Handler Provider Ċ Ċ /** Ċ Ġ* ĠCreates Ġthe Ġdefault Ġ[ Permission RequestBuilder ] Ġusing Ġthe Ġcontext Ġof Ġthe Ġ[ Activity ]. Ċ Ġ* ĠThe Ġbuilder Ġwill Ġuse Ġthe Ġdefault Ġconfigurations Ġand Ġwill Ġbe Ġprovided Ġwith Ċ Ġ* Ġthe Ġset Ġof Ġ[ other Permissions ] Ġattached Ġto Ġit . Ċ Ġ* Ċ Ġ* Ġ@ param Ġfirst Permission Ġthe Ġfirst Ġpermission Ġwhich Ġshould Ġbe Ġrequested . Ċ Ġ* Ġ@ param Ġother Permissions Ġthe Ġother Ġpermissions Ġthat Ġmust Ġbe Ġrequested , Ġif Ġthe Ġrequest Ċ Ġ* Ġshould Ġhandle Ġmore Ġthan Ġone Ġpermission . Ċ Ġ* Ġ@ return Ġnew Ġinstance Ġof Ġthe Ġdefault Ġ[ Permission RequestBuilder ]. Ċ Ġ*/ Ċ public Ġfun ĠFragment Activity . permissions Builder ( ĊĠĠĠ Ġfirst Permission : ĠString , ĊĠĠĠ Ġvar arg Ġother Permissions : ĠString Ċ ): ĠPermission RequestBuilder Ġ{ ĊĠĠĠ Ġval Ġhandler Ġ= ĠResult Launcher Runtime Permission Handler Provider ( support FragmentManager ) ĊĠĠĠ Ġ// ĠCreates Ġthe Ġbuilder . ĊĠĠĠ Ġreturn ĠCompat Permission RequestBuilder ( this ) ĊĠĠĠĠĠĠĠ Ġ. permissions ( first Permission , Ġ* other Permissions ) ĊĠĠĠĠĠĠĠ Ġ. runtime Handler Provider ( handler ) Ċ } Ċ Ċ /** Ċ Ġ* ĠCreates Ġthe Ġdefault Ġ[ Permission RequestBuilder ] Ġusing Ġthe Ġcontext Ġof Ġthe Ġ[ Activity ] Ġat Ġwhich Ċ Ġ* Ġthis Ġ[ Fragment ] Ġis Ġattached . Ċ Ġ* ĠThe Ġbuilder Ġwill Ġuse Ġthe Ġdefault Ġconfigurations Ġand Ġwill Ġbe Ġprovided Ġwith Ċ Ġ* Ġthe Ġset Ġof Ġ[ first Permission ] Ġplus Ġ[ other Permissions ] Ġattached Ġto Ġit . Ċ Ġ* Ċ Ġ* Ġ@ param Ġfirst Permission Ġthe Ġfirst Ġpermission Ġwhich Ġshould Ġbe Ġrequested . Ċ Ġ* Ġ@ param Ġother Permissions Ġthe Ġother Ġpermissions Ġthat Ġmust Ġbe Ġrequested , Ġif Ġthe Ġrequest Ċ Ġ* Ġshould Ġhandle Ġmore Ġthan Ġone Ġpermission . Ċ Ġ* Ġ@ return Ġnew Ġinstance Ġof Ġthe Ġdefault Ġ[ Permission RequestBuilder ]. Ċ Ġ* Ġ@ throws ĠNullPointerException Ġif Ġthe Ġ[ Fragment ] Ġis Ġnot Ġattached Ġto Ġan Ġ[ Activity ]. Ċ Ġ*/ Ċ public Ġfun ĠFragment . permissions Builder ( ĊĠĠĠ Ġfirst Permission : ĠString , ĊĠĠĠ Ġvar arg Ġother Permissions : ĠString Ċ ): ĠPermission RequestBuilder Ġ= Ġrequire Activity (). permissions Builder ( first Permission , Ġ* other Permissions ) Ċ