package Ġch oo ong g . box . manager Ċ Ċ import Ġandroid . app . Activity Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . Intent Ċ import Ġandroid . net . Uri Ċ import Ġch oo ong g . box . ext . get MimeType Ċ import Ġch oo ong g . box . log . Box Log Ċ Ċ object ĠFile Op ener Ġ{ ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġ çĽ´æİ¥ æīĵå¼Ģ ĠUrl Ġ å¯¹åºĶçļĦ ç³»ç»Ł åºĶçĶ¨ ĊĠĠĠĠ Ġ* Ġå¦Ĥæŀľ url æĺ¯ è§Ĩé¢ĳ åľ°åĿĢ , åĪĻ çĽ´æİ¥ çĶ¨ ç³»ç»Ł çļĦ æĴŃæĶ¾ åĻ¨ æīĵå¼Ģ ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġopen Url ( activity : ĠActivity , Ġuri : ĠUri ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent ( Intent . ACTION _ VIEW ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġintent . add Flags ( Intent . FLAG _ ACTIVITY _ NEW _ TASK ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġintent . add Flags ( Intent . FLAG _ GRANT _ READ _ URI _ PERMISSION ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġintent . add Flags ( Intent . FLAG _ GRANT _ WRITE _ URI _ PERMISSION ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġintent . setData And Type ( uri , Ġuri . get MimeType ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġactivity . startActivity ( intent ) ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠBox Log . e (" open Url Ġerror Ġ: Ġ${ e . message }") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġ æīĵå¼Ģ ç³»ç»Ł åĪĨäº« å¼¹ çªĹ Ġ( Open Ġthe Ġsystem Ġsharing Ġpopup ) ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġopen Share ( context : ĠContext , Ġuri : ĠUri , Ġtitle : ĠString Ġ= Ġ" åĪĨäº« æĸĩä»¶ ") Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent ( Intent . ACTION _ SEND ) ĊĠĠĠĠĠĠĠ Ġintent . putExtra ( Intent . EXTRA _ STREAM , Ġuri ) ĊĠĠĠĠĠĠĠ Ġintent . add Flags ( Intent . FLAG _ ACTIVITY _ NEW _ TASK ) ĊĠĠĠĠĠĠĠ Ġintent . add Flags ( Intent . FLAG _ GRANT _ READ _ URI _ PERMISSION ) ĊĠĠĠĠĠĠĠ Ġintent . add Flags ( Intent . FLAG _ GRANT _ WRITE _ URI _ PERMISSION ) ĊĠĠĠĠĠĠĠ Ġ// ĠPut Ġthe ĠUri Ġand ĠMIME Ġtype Ġin Ġthe Ġresult ĠIntent ĊĠĠĠĠĠĠĠ Ġintent . setData And Type ( uri , Ġuri . get MimeType ()) ĊĠĠĠĠĠĠĠ Ġ// https :// stackoverflow . com / questions / 3 9 1 8 5 1 7 / calling - start activity - from - outside - of - an - activity - context ĊĠĠĠĠĠĠĠ Ġval Ġcho oser Intent : ĠIntent Ġ= ĠIntent . create Chooser ( intent , Ġtitle ) ĊĠĠĠĠĠĠĠ Ġcho oser Intent . add Flags ( Intent . FLAG _ ACTIVITY _ NEW _ TASK ) ĊĠĠĠĠĠĠĠ Ġcontext . startActivity ( cho oser Intent ) ĊĠĠĠ Ġ} Ċ }