You can manually implement the icons, however because shiny often escapes content you are not completely free in where to put icons unless you push them later via javascript or create custom HTML element constructors in R.
Also note for testing always run app in browser. RStudio browser is not fully compatible with all features.
Example:
library(shiny)
ui <- fluidPage(
tags$head(
HTML('<script defer src="https://use.fontawesome.com/releases/v5.0.10/js/all.js" integrity="sha384-slN8GvtUJGnv6ca26v8EzVaR9DC58QEwsIk9q1QXdCU8Yu8ck/tL/5szYlBbqmS+" crossorigin="anonymous"></script>')
)
,column(width = 2L,selectizeInput(inputId = 'demoinput',label = HTML('Select your favorite <i class="fas fa-mobile-alt"></i> os/brand'),selected = NULL,multiple= TRUE
,choices = NULL))
,column(width = 6L,DT::datatable(data = cbind(iris[1:10,],"icon"="<i class=\"fas fa-leaf\"></i>"),escape = FALSE))
)
server <- function(input, output, session) {
updateSelectizeInput(session = session,inputId = 'demoinput',choices = c('apple','android','blackberry'),selected = NULL,
options = list(render=I("{option: function(item, escape) {return '<div><span class = \"fab fa-'+item.value.toLowerCase()+'\"></span></div>'}}"))
)
}
runApp(launch.browser = TRUE , shinyApp(ui, server))