В общем случае создавать вид вне основного потока небезопасно.
В вашем конкретном случае это недопустимо, поскольку WebView
создает Handler()
в своем конструкторе для связи с потоком пользовательского интерфейса.Но поскольку конструктор по умолчанию Handler
присоединяется к текущему потоку, а текущий поток не запускает Looper
, вы получаете это исключение.
Вы можете подумать, что создаете поток зацикливания (который долженбудь жив, по крайней мере, до тех пор, пока WebView
) может тебе помочь, но на самом деле это рискованный путь.И я бы не рекомендовал это.
Вы должны придерживаться создания WebView
s в главном потоке.Все элементы управления обычно оптимизируются для быстрого построения, поскольку они почти всегда создаются в потоке пользовательского интерфейса.