Advertisement
Guest User

Untitled

a guest
May 24th, 2018
62
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.22 KB | None | 0 0
  1. package com.example.ralh1.permisos;
  2.  
  3. import android.Manifest;
  4. import android.annotation.SuppressLint;
  5. import android.annotation.TargetApi;
  6. import android.app.Activity;
  7. import android.content.Intent;
  8.  
  9. import android.content.pm.PackageManager;
  10. import android.net.Uri;
  11. import android.os.Build;
  12.  
  13. import android.os.Bundle;
  14. import android.support.annotation.NonNull;
  15. import android.support.annotation.RequiresApi;
  16. import android.support.v4.app.ActivityCompat;
  17. import android.view.View;
  18.  
  19. import android.widget.EditText;
  20. import android.widget.ImageButton;
  21. import android.widget.Toast;
  22.  
  23.  
  24. public class MainActivity extends Activity {
  25. ImageButton tel, bing;
  26. EditText fone, pag;
  27. private final static int PHONE_CALL_CODE = 100;
  28.  
  29. @SuppressLint("WrongViewCast")
  30. @Override
  31. protected void onCreate(Bundle savedInstanceState) {
  32. super.onCreate(savedInstanceState);
  33. setContentView(R.layout.activity_main);
  34. tel = (ImageButton) findViewById(R.id.btntel);
  35. bing = (ImageButton) findViewById(R.id.btnbing);
  36. fone = (EditText) findViewById(R.id.edtfone);
  37. pag = (EditText) findViewById(R.id.edtweb);
  38.  
  39. tel.setOnClickListener(new View.OnClickListener() {
  40. @TargetApi(Build.VERSION_CODES.M)
  41. @RequiresApi(api = Build.VERSION_CODES.M)
  42. @Override
  43. public void onClick(View v) {
  44. String strPhone = fone.getText().toString();
  45. String arrPermissions = (Manifest.permission.CALL_PHONE);
  46. if(!strPhone.isEmpty()){
  47. if(Build.VERSION.SDK_INT>= Build.VERSION_CODES.M){
  48. requestPermissions(new String[]{arrPermissions},PHONE_CALL_CODE);
  49. }
  50. else{
  51. OlderVersion(strPhone);
  52. }
  53. }
  54. }
  55.  
  56.  
  57. @android.support.annotation.RequiresApi(api = Build.VERSION_CODES.M)
  58. private void OlderVersion(String strPhone) {
  59. Intent intent = new Intent(Intent.ACTION_CALL, Uri.parse("Tell:" + strPhone));
  60. if (CheckPermissions(Manifest.permission.CALL_PHONE)) {
  61. if(checkSelfPermission(Manifest.permission.CALL_PHONE)!= PackageManager.PERMISSION_GRANTED){return;}
  62. }
  63. startActivity(intent);
  64. }
  65.  
  66. });
  67.  
  68. bing.setOnClickListener(new View.OnClickListener() {
  69. @Override
  70. public void onClick(View v) {
  71. String strUrl = pag.getText().toString();
  72. if(!strUrl.isEmpty()){
  73. Intent intent = new Intent (Intent.ACTION_VIEW, Uri.parse("http://"+strUrl));
  74. startActivity(intent);
  75. }
  76.  
  77. }
  78. });
  79.  
  80.  
  81. }
  82.  
  83.  
  84. private boolean CheckPermissions(String permission){
  85. int result = this.checkCallingOrSelfPermission(permission);
  86. return result == PackageManager.PERMISSION_GRANTED;
  87. }
  88.  
  89. @Override
  90. public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
  91. super.onRequestPermissionsResult(requestCode, permissions, grantResults);
  92. switch(requestCode){
  93. case PHONE_CALL_CODE:
  94. if (permissions[0].equals((Manifest.permission.CALL_PHONE))) {
  95. if (grantResults[0] == PackageManager.PERMISSION_GRANTED) ;
  96. Intent intent = new Intent(Intent.ACTION_CALL, Uri.parse("tel:" + fone.getText().toString()));
  97. if (ActivityCompat.checkSelfPermission(this, Manifest.permission.CALL_PHONE) != PackageManager.PERMISSION_GRANTED)
  98. return;
  99. startActivity(intent);
  100.  
  101. }else{
  102. Toast.makeText(MainActivity.this,"Denegaste el permiso",Toast.LENGTH_SHORT).show();
  103.  
  104. }
  105. break;
  106. default:
  107. super.onRequestPermissionsResult(requestCode,permissions,grantResults);
  108. }
  109.  
  110.  
  111. }
  112.  
  113. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement