Skip to content

Instantly share code, notes, and snippets.

@eristoddle
Created March 30, 2020 16:33
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save eristoddle/a6a16f27bbc191c0ad64c8c7d2493f44 to your computer and use it in GitHub Desktop.
Save eristoddle/a6a16f27bbc191c0ad64c8c7d2493f44 to your computer and use it in GitHub Desktop.
package com.eristoddle.boilerplate
import android.content.Context
import android.content.Intent
import android.content.SharedPreferences
import android.os.Bundle
import android.text.Spanned
import androidx.appcompat.app.AppCompatActivity
import androidx.core.text.HtmlCompat
import com.google.android.material.snackbar.Snackbar
import kotlinx.android.synthetic.main.activity_eula.*
import java.io.InputStream
class EulaActivity : AppCompatActivity() {
private lateinit var preferences: SharedPreferences
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
preferences = applicationContext
.getSharedPreferences("com.eristoddle.boilerplate", Context.MODE_PRIVATE)
setContentView(R.layout.activity_eula)
initializeUI()
}
private fun initializeUI() {
eula_cancel.setOnClickListener { cancelEULA() }
eula_confirm.setOnClickListener {
confirmEULA()
}
setEula()
}
private fun setEula() {
val eula = intent.extras!!.getInt("eula")
val inputStream: InputStream = resources.openRawResource(eula)
val bytes = ByteArray(inputStream.available())
inputStream.read(bytes)
val htmlAsSpanned: Spanned =
HtmlCompat.fromHtml(String(bytes), HtmlCompat.FROM_HTML_MODE_LEGACY)
eula_content.text = htmlAsSpanned
}
private fun cancelEULA() {
Snackbar.make(
findViewById(android.R.id.content),
"You must accept the EULA to continue",
Snackbar.LENGTH_LONG
).show()
}
// NOTE: Here you would call your api to save the status
private fun confirmEULA() {
preferences.edit().putBoolean("eulaAccepted", true).apply()
val intent = Intent()
setResult(RESULT_OK, intent)
finish()
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment