Repositorio del curso CCOM4030 el semestre B91 del proyecto kilometro0

MainActivity.kt 3.1KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. package com.example.pasos
  2. import android.Manifest
  3. import android.content.Intent
  4. import android.content.pm.PackageManager
  5. import androidx.appcompat.app.AppCompatActivity
  6. import android.os.Bundle
  7. import android.telephony.SmsManager
  8. import android.view.View
  9. import android.widget.Button
  10. import android.widget.Toast
  11. import androidx.core.app.ActivityCompat
  12. import androidx.core.content.ContextCompat
  13. class MainActivity : AppCompatActivity() {
  14. private val SEND_SMS_REQ: Int = 100
  15. private val MY_LOCATION_REQ: Int = 101
  16. override fun onCreate(savedInstanceState: Bundle?) {
  17. super.onCreate(savedInstanceState)
  18. setContentView(R.layout.activity_main)
  19. val dangerBttn: Button = findViewById(R.id.dangerBttn)
  20. val preset1Bttn: Button = findViewById(R.id.preset1Bttn)
  21. val preset2Bttn: Button = findViewById(R.id.preset2Bttn)
  22. val preset3Bttn: Button = findViewById(R.id.preset3Bttn)
  23. CheckPermission(Manifest.permission.SEND_SMS, SEND_SMS_REQ)
  24. CheckPermission(Manifest.permission.ACCESS_FINE_LOCATION, MY_LOCATION_REQ)
  25. dangerBttn.setOnClickListener {
  26. SendSms("[CHUCKLES] I'M IN DANGER")
  27. }
  28. preset1Bttn.setOnClickListener {
  29. SendSms("Voy de regreso a casa.")
  30. }
  31. preset2Bttn.setOnClickListener {
  32. SendSms("Estoy caminando sola/o por la calle.")
  33. }
  34. preset3Bttn.setOnClickListener {
  35. SendSms("Me quede a pie.")
  36. }
  37. }
  38. private fun CheckPermission(perm: String, code: Int) {
  39. if (ContextCompat.checkSelfPermission(this, perm) != PackageManager.PERMISSION_GRANTED) {
  40. ActivityCompat.requestPermissions(this, arrayOf(perm), code)
  41. }
  42. }
  43. override fun onRequestPermissionsResult(requestCode: Int, permissions: Array<out String>, grantResults: IntArray) {
  44. if (requestCode == SEND_SMS_REQ) {
  45. if (grantResults.size > 1 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
  46. Toast.makeText(this, "SMS PERMISSION GRANTED", Toast.LENGTH_SHORT)
  47. }
  48. else {
  49. Toast.makeText(this, "SMS PERMISSION DENIED", Toast.LENGTH_SHORT)
  50. }
  51. }
  52. else if (requestCode == MY_LOCATION_REQ) {
  53. if (grantResults.size > 1 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
  54. Toast.makeText(this, "LOCATION PERMISSION GRANTED", Toast.LENGTH_SHORT)
  55. }
  56. else {
  57. Toast.makeText(this, "LOCATION PERMISSION DENIED", Toast.LENGTH_SHORT)
  58. }
  59. }
  60. }
  61. private fun SendSms(msg: String) {
  62. if (ActivityCompat.checkSelfPermission(this, Manifest.permission.SEND_SMS) != PackageManager.PERMISSION_GRANTED) {
  63. ActivityCompat.requestPermissions(this, arrayOf(Manifest.permission.SEND_SMS), SEND_SMS_REQ)
  64. }
  65. else {
  66. SmsManager.getDefault().sendTextMessage("+17875551234", null, msg, null, null)
  67. Toast.makeText(this, "SMS Sent", Toast.LENGTH_SHORT).show()
  68. }
  69. }
  70. fun changeActivity(view: View) {
  71. val intent = Intent(this, Main2Activity::class.java)
  72. startActivity(intent)
  73. }
  74. }