/* Ċ Ġ* Ġ************************************************************************* Ċ Ġ* Ġ ĠStart Activity . java Ċ Ġ* Ġ************************************************************************* * Ċ Ġ* Ġ ĠCopyright ĠÂ© Ġ 2 0 1 5 ĠV LC Ġauthors Ġand ĠVideo LAN Ċ Ġ* Ġ ĠAuthor : ĠGe off rey ĠM Ã© ta is Ċ Ġ* Ċ Ġ* Ġ ĠThis Ġprogram Ġis Ġfree Ġsoftware ; Ġyou Ġcan Ġredistribute Ġit Ġand / or Ġmodify Ċ Ġ* Ġ Ġit Ġunder Ġthe Ġterms Ġof Ġthe ĠGNU ĠGeneral ĠPublic ĠLicense Ġas Ġpublished Ġby Ċ Ġ* Ġ Ġthe ĠFree ĠSoftware ĠFoundation ; Ġeither Ġversion Ġ 2 Ġof Ġthe ĠLicense , Ġor Ċ Ġ* Ġ Ġ( at Ġyour Ġoption ) Ġany Ġlater Ġversion . Ċ Ġ* Ċ Ġ* Ġ ĠThis Ġprogram Ġis Ġdistributed Ġin Ġthe Ġhope Ġthat Ġit Ġwill Ġbe Ġuseful , Ċ Ġ* Ġ Ġbut ĠWITHOUT ĠANY ĠWARRANTY ; Ġwithout Ġeven Ġthe Ġimplied Ġwarranty Ġof Ċ Ġ* Ġ ĠMERCHANTABILITY Ġor ĠFITNESS ĠFOR ĠA ĠPARTICULAR ĠPURPOSE . Ġ ĠSee Ġthe Ċ Ġ* Ġ ĠGNU ĠGeneral ĠPublic ĠLicense Ġfor Ġmore Ġdetails . Ċ Ġ* Ċ Ġ* Ġ ĠYou Ġshould Ġhave Ġreceived Ġa Ġcopy Ġof Ġthe ĠGNU ĠGeneral ĠPublic ĠLicense Ċ Ġ* Ġ Ġalong Ġwith Ġthis Ġprogram ; Ġif Ġnot , Ġwrite Ġto Ġthe ĠFree ĠSoftware Ċ Ġ* Ġ ĠFoundation , ĠInc ., Ġ 5 1 ĠFranklin ĠStreet , ĠFifth ĠFloor , ĠBoston ĠMA Ġ 0 2 1 1 0 - 1 3 0 1 , ĠUSA . Ċ Ġ* Ġ Ġ************************************************************************* ** Ċ Ġ*/ Ċ package Ġorg . vide ol an . v lc . util ĊĊ Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . provider . Media Store Ċ import Ġorg . vide ol an . lib v lc . util . Android Util Ċ Ċ class ĠVoice Search Params ( val Ġquery : ĠString , Ġextras : ĠBundle ?) Ġ{ ĊĠĠĠ Ġvar Ġis Any : ĠBoolean Ġ= Ġfalse ĊĠĠĠ Ġvar Ġis Un structured : ĠBoolean Ġ= Ġfalse ĊĠĠĠ Ġvar Ġis Genre Focus : ĠBoolean Ġ= Ġfalse ĊĠĠĠ Ġvar Ġis Artist Focus : ĠBoolean Ġ= Ġfalse ĊĠĠĠ Ġvar Ġis Album Focus : ĠBoolean Ġ= Ġfalse ĊĠĠĠ Ġvar Ġis Playlist Focus : ĠBoolean Ġ= Ġfalse ĊĠĠĠ Ġvar Ġis Song Focus : ĠBoolean Ġ= Ġfalse ĊĠĠĠ Ġvar Ġgenre : ĠString ? Ġ= Ġnull ĊĠĠĠ Ġvar Ġartist : ĠString ? Ġ= Ġnull ĊĠĠĠ Ġvar Ġalbum : ĠString ? Ġ= Ġnull ĊĠĠĠ Ġvar Ġplaylist : ĠString ? Ġ= Ġnull ĊĠĠĠ Ġvar Ġsong : ĠString ? Ġ= Ġnull ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( query . isEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Any Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġif Ġ( extras Ġ== Ġnull Ġ|| Ġ! extras . containsKey ( Media Store . EXTRA _ MEDIA _ FOCUS )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Un structured Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġgenre Key Ġ= Ġif Ġ( Android Util . is L ol li Pop Or Later ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMedia Store . EXTRA _ MEDIA _ GEN RE ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" android . intent . extra . genre " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( extras . getString ( Media Store . EXTRA _ MEDIA _ FOCUS )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMedia Store . Audio . Gen res . ENTRY _ CONTENT _ TYPE Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis Genre Focus Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgenre Ġ= Ġextras . getString ( genre Key ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( genre . isNull OrEmpty ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgenre Ġ= Ġquery ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMedia Store . Audio . Art ists . ENTRY _ CONTENT _ TYPE Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis Artist Focus Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgenre Ġ= Ġextras . getString ( genre Key ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġartist Ġ= Ġextras . getString ( Media Store . EXTRA _ MEDIA _ AR TI ST ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMedia Store . Audio . Album s . ENTRY _ CONTENT _ TYPE Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis Album Focus Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġalbum Ġ= Ġextras . getString ( Media Store . EXTRA _ MEDIA _ AL BU M ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgenre Ġ= Ġextras . getString ( genre Key ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġartist Ġ= Ġextras . getString ( Media Store . EXTRA _ MEDIA _ AR TI ST ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMedia Store . Audio . Play lists . ENTRY _ CONTENT _ TYPE Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis Playlist Focus Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġplaylist Ġ= Ġextras . getString ( Media Store . EXTRA _ MEDIA _ PLAY LIST ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMedia Store . Audio . Media . ENTRY _ CONTENT _ TYPE Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis Song Focus Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsong Ġ= Ġextras . getString ( Media Store . EXTRA _ MEDIA _ TITLE ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( song !!. contains (" (" )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsong Ġ= Ġsong !!. substring ( 0 , Ġsong !!. indexOf (' (' )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġalbum Ġ= Ġextras . getString ( Media Store . EXTRA _ MEDIA _ AL BU M ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgenre Ġ= Ġextras . getString ( genre Key ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġartist Ġ= Ġextras . getString ( Media Store . EXTRA _ MEDIA _ AR TI ST ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠtoString (): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġ( """ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġquery =$ query ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Any =$ is Any ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Un structured =$ is Un structured ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Genre Focus =$ is Genre Focus ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Artist Focus =$ is Artist Focus ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Album Focus =$ is Album Focus ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Playlist Focus =$ is Playlist Focus ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Song Focus =$ is Song Focus ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgenre =$ genre ĊĠĠĠĠĠĠĠĠĠĠĠ Ġartist =$ artist ĊĠĠĠĠĠĠĠĠĠĠĠ Ġalbum =$ album ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplaylist =$ playlist ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsong =$ song """. trim Indent ()) ĊĠĠĠ Ġ} Ċ } Ċ