Do not launch customTabs if no touchscreen found

This commit is contained in:
Mygod
2018-12-21 12:35:11 +08:00
parent 83aba3418b
commit a48d441a15

View File

@@ -26,10 +26,6 @@ import q.rorbin.badgeview.QBadgeView
import timber.log.Timber import timber.log.Timber
class MainActivity : AppCompatActivity(), BottomNavigationView.OnNavigationItemSelectedListener, ServiceConnection { class MainActivity : AppCompatActivity(), BottomNavigationView.OnNavigationItemSelectedListener, ServiceConnection {
companion object {
var current: MainActivity? = null
}
private lateinit var binding: ActivityMainBinding private lateinit var binding: ActivityMainBinding
private lateinit var badge: QBadgeView private lateinit var badge: QBadgeView
private var clients: ClientMonitorService.Binder? = null private var clients: ClientMonitorService.Binder? = null
@@ -39,7 +35,7 @@ class MainActivity : AppCompatActivity(), BottomNavigationView.OnNavigationItemS
.build() .build()
} }
fun launchUrl(url: Uri) = try { fun launchUrl(url: Uri) = if (packageManager.hasSystemFeature("android.hardware.faketouch")) try {
customTabsIntent.launchUrl(this, url) customTabsIntent.launchUrl(this, url)
} catch (e: ActivityNotFoundException) { } catch (e: ActivityNotFoundException) {
Timber.w(e) Timber.w(e)
@@ -47,7 +43,7 @@ class MainActivity : AppCompatActivity(), BottomNavigationView.OnNavigationItemS
} catch (e: SecurityException) { } catch (e: SecurityException) {
Timber.w(e) Timber.w(e)
SmartSnackbar.make(url.toString()).show() SmartSnackbar.make(url.toString()).show()
} } else SmartSnackbar.make(url.toString()).show()
override fun onCreate(savedInstanceState: Bundle?) { override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState) super.onCreate(savedInstanceState)