Guest User

Untitled

a guest
Nov 18th, 2017
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.90 KB | None | 0 0
  1. private static final String[] INITIAL_PERMS={
  2. Manifest.permission.ACCESS_FINE_LOCATION,
  3. Manifest.permission.READ_CONTACTS,Manifest.permission.ACCESS_COARSE_LOCATION,Manifest.permission.READ_PHONE_STATE,
  4.  
  5. Manifest.permission.READ_CALL_LOG,Manifest.permission.WRITE_CALL_LOG,Manifest.permission.WRITE_EXTERNAL_STORAGE,
  6. Manifest.permission.READ_CONTACTS, Manifest.permission.SEND_SMS,Manifest.permission.RECEIVE_SMS,
  7.  
  8. Manifest.permission.CAMERA,Manifest.permission.READ_SMS
  9. };
  10. if(Build.VERSION.SDK_INT >= 23 ){
  11.  
  12.  
  13. if (!canAccessLocation() || !canAccessLocation_1() || !canAccessPhone() || !canAccessContacts() || !canAccessStorage() || !canAccessContacts1()
  14. || !canAccessSms() || !canAccessSms1() || !canAccessSms2() || !canAccessCamera()) {
  15. ActivityCompat.requestPermissions(SplashActivity.this, INITIAL_PERMS, INITIAL_REQUEST);
  16. }
  17. }
  18. else if (Build.VERSION.SDK_INT < 23) {
  19.  
  20.  
  21. //not a marshamallow
  22. }
  23.  
  24. @Override
  25. public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
  26.  
  27.  
  28. switch(requestCode) {
  29. case REQUEST_CAMERA:
  30. if (canAccessCamera()) {
  31. doCameraThing();
  32. }
  33. else {
  34. bzzzt();
  35. }
  36. break;
  37.  
  38. case REQUEST_CONTACTS:
  39. if (canAccessContacts()&&canAccessContacts1()) {
  40. doContactsThing();
  41. }
  42. else {
  43. bzzzt();
  44. }
  45. break;
  46.  
  47. case REQUEST_LOCATION:
  48. if (canAccessLocation()&&canAccessLocation_1()) {
  49. doLocationThing();
  50. }
  51. else {
  52. bzzzt();
  53. }
  54. break;
  55. case REQUEST_PHONE:
  56. if (canAccessPhone()) {
  57. dophoneThing();
  58. }
  59. else {
  60. bzzzt();
  61. }
  62. break;
  63. case REQUEST_SMS:
  64. if (canAccessSms()&&canAccessSms1() && canAccessSms2()) {
  65. doSmsThing();
  66. }
  67. else {
  68. bzzzt();
  69. }
  70. break;
  71. case REQUEST_STORAGE:
  72. if (canAccessStorage()) {
  73. dostorageThing();
  74. }
  75. else {
  76. bzzzt();
  77. }
  78. break;
  79. }
  80. checking();
  81.  
  82. }
  83.  
  84. //location
  85.  
  86. private boolean canAccessLocation() {
  87. return(hasPermission(Manifest.permission.ACCESS_FINE_LOCATION));
  88. }
  89. private boolean canAccessLocation_1() {
  90. return(hasPermission(Manifest.permission.ACCESS_COARSE_LOCATION));
  91. }
  92.  
  93.  
  94.  
  95. //phone
  96. private boolean canAccessPhone() {
  97. return(hasPermission(Manifest.permission.READ_PHONE_STATE));
  98. }
  99. private boolean canAccessStorage() {
  100. return(hasPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE));
  101. }
  102.  
  103.  
  104. //sms
  105. private boolean canAccessSms() {
  106. return(hasPermission(Manifest.permission.READ_SMS));
  107. }
  108. private boolean canAccessSms1() {
  109. return(hasPermission(Manifest.permission.SEND_SMS));
  110. }
  111. private boolean canAccessSms2() {
  112. return(hasPermission(Manifest.permission.RECEIVE_SMS));
  113. }
  114.  
  115.  
  116. //camera
  117. private boolean canAccessCamera() {
  118. return(hasPermission(Manifest.permission.CAMERA));
  119. }
  120.  
  121. //contact
  122.  
  123. private boolean canAccessContacts() {
  124. return(hasPermission(Manifest.permission.READ_CONTACTS));
  125. }
  126. private boolean canAccessContacts1() {
  127. return(hasPermission(Manifest.permission.WRITE_CONTACTS));
  128. }
  129.  
  130. private boolean hasPermission(String perm) {
  131. return(ContextCompat.checkSelfPermission(this, perm)==
  132. PackageManager.PERMISSION_GRANTED);
  133. }
  134.  
  135. private void bzzzt() {
  136. Toast.makeText(this, R.string.toast_bzzzt, Toast.LENGTH_LONG).show();
  137. }
  138.  
  139. private void doCameraThing() {
  140. Toast.makeText(this, R.string.toast_camera, Toast.LENGTH_SHORT).show();
  141. }
  142.  
  143. private void doContactsThing() {
  144. Toast.makeText(this, R.string.toast_contacts, Toast.LENGTH_SHORT).show();
  145. }
  146.  
  147. private void doLocationThing() {
  148. Toast.makeText(this, R.string.toast_location, Toast.LENGTH_SHORT).show();
  149. }
  150. private void doSmsThing() {
  151. Toast.makeText(this, R.string.toast_sms, Toast.LENGTH_SHORT).show();
  152. }
  153.  
  154. private void dostorageThing() {
  155. Toast.makeText(this, R.string.toast_storage, Toast.LENGTH_SHORT).show();
  156. }
  157.  
  158. private void dophoneThing() {
  159. Toast.makeText(this, R.string.toast_phone, Toast.LENGTH_SHORT).show();
  160. }
  161.  
  162.  
  163. //checking
  164.  
  165. public void checking(){
  166.  
  167. if (!m_sharedPreference.contains("useruid") && flag == true ) {
  168.  
  169. db.ClearTables();
  170. executeCircleAndOperatorsList();
  171. }
  172. else if (m_sharedPreference.contains("useruid") && flag == true && CHECKDB == false) {
  173.  
  174. db.ClearTables();
  175. executeCircleAndOperatorsList();
  176. }else if (m_sharedPreference.contains("useruid") && flag == true && CHECKDB == true) {
  177.  
  178. servicemodifyremainder();
  179. } else if (m_sharedPreference.contains("useruid") && CHECKDB == true && flag == false) {
  180.  
  181. Intent intent1 = new Intent(SplashActivity.this, MainActivity.class);
  182. startActivity(intent1);
  183. }
  184. }
  185.  
  186. @Override
  187. public void onRequestPermissionsResult(int requestCode,
  188. String permissions[], int[] grantResults) {
  189. switch (requestCode) {
  190. case MY_PERMISSIONS_REQUEST_READ_CONTACTS: {
  191. // If request is cancelled, the result arrays are empty.
  192. if (grantResults.length > 0
  193. && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
  194.  
  195. // permission was granted, yay! Do the
  196. // contacts-related task you need to do.
  197.  
  198. } else {
  199.  
  200. // permission denied, boo! Disable the
  201. // functionality that depends on this permission.
  202. }
  203. return;
  204. }
  205.  
  206. // other 'case' lines to check for other
  207. // permissions this app might request
  208. }
  209. }
  210.  
  211. int permissions_All = 1;
  212. String[] Permissions = {Manifest.permission.RECEIVE_SMS,
  213. Manifest.permission.READ_SMS
  214. };
  215. if (!hasPermissions(this, Permissions)) {
  216. ActivityCompat.requestPermissions(this, Permissions, permissions_All);
  217. }
  218. }
  219.  
  220. public static boolean hasPermissions(Context context, String... Permissions) {
  221. if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M && Permissions != null) {
  222. for (String Permission : Permissions) {
  223. if (ActivityCompat.checkSelfPermission(context, Permission) != PackageManager.PERMISSION_GRANTED) {
  224. return false;
  225. }
  226. }
  227. }
Add Comment
Please, Sign In to add comment