import
android.content.Context
import
android.content.pm.PackageManager
import
android.net.Uri
import
android.os.Bundle
import
androidx.appcompat.app.AppCompatActivity
import
androidx.browser.customtabs.*
import
androidx.core.content.ContextCompat
import
kotlinx.android.synthetic.main.activity_main.*
class
MainActivity : AppCompatActivity() {
private
var package_name =
"com.android.chrome"
;
override fun onCreate(savedInstanceState: Bundle?) {
super
.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
button.setOnClickListener {
val builder = CustomTabsIntent.Builder()
val params = CustomTabColorSchemeParams.Builder()
params.setToolbarColor(ContextCompat.getColor(
this
@MainActivity
, R.color.colorPrimary))
builder.setDefaultColorSchemeParams(params.build())
builder.setShowTitle(
true
)
builder.setShareState(CustomTabsIntent.SHARE_STATE_ON)
builder.setInstantAppsEnabled(
true
)
val customBuilder = builder.build()
if
(
this
.isPackageInstalled(package_name)) {
customBuilder.intent.setPackage(package_name)
customBuilder.launchUrl(
this
, Uri.parse(GFG_URI))
}
else
{
}
}
}
}
fun Context.isPackageInstalled(packageName: String): Boolean {
return
try
{
packageManager.getPackageInfo(packageName,
0
)
true
}
catch
(e: PackageManager.NameNotFoundException) {
false
}
}