@@ -1618,8 +1618,8 @@ private void writeActivityPermissionHandlers(final PrintWriter writer, String[]
1618
1618
// More on permission in Android 23:
1619
1619
// https://inthecheesefactory.com/blog/things-you-need-to-know-about-android-m-permission-developer-edition/en
1620
1620
writer .println (" @Override" );
1621
- writer .println (" public void onResume () {" );
1622
- writer .println (" super.onResume ();" );
1621
+ writer .println (" public void onStart () {" );
1622
+ writer .println (" super.onStart ();" );
1623
1623
writer .println (" ArrayList<String> needed = new ArrayList<String>();" );
1624
1624
writer .println (" int check;" );
1625
1625
writer .println (" boolean danger = false;" );
@@ -1654,11 +1654,12 @@ private void writeActivityPermissionHandlers(final PrintWriter writer, String[]
1654
1654
writer .println (" builder.setMessage(\" The app cannot run without these permissions, will quit now.\" )" );
1655
1655
writer .println (" .setCancelable(false)" );
1656
1656
writer .println (" .setPositiveButton(\" OK\" , new DialogInterface.OnClickListener() {" );
1657
- writer .println (" public void onClick(DialogInterface dialog, int id) {}" );
1657
+ writer .println (" public void onClick(DialogInterface dialog, int id) {" );
1658
+ writer .println (" finish();" );
1659
+ writer .println (" }" );
1658
1660
writer .println (" });" );
1659
1661
writer .println (" AlertDialog alert = builder.create();" );
1660
1662
writer .println (" alert.show();" );
1661
- writer .println (" finishAffinity();" );
1662
1663
writer .println (" }" );
1663
1664
writer .println (" }" );
1664
1665
writer .println (" onPermissionsGranted();" );
@@ -1744,11 +1745,12 @@ private void writeServicePermissionHandlers(final PrintWriter writer, String[] p
1744
1745
writer .println (" builder.setMessage(\" The app cannot run without these permissions, will quit now.\" )" );
1745
1746
writer .println (" .setCancelable(false)" );
1746
1747
writer .println (" .setPositiveButton(\" OK\" , new DialogInterface.OnClickListener() {" );
1747
- writer .println (" public void onClick(DialogInterface dialog, int id) {}" );
1748
+ writer .println (" public void onClick(DialogInterface dialog, int id) {" );
1749
+ writer .println (" stopSelf();" );
1750
+ writer .println (" }" );
1748
1751
writer .println (" });" );
1749
1752
writer .println (" AlertDialog alert = builder.create();" );
1750
1753
writer .println (" alert.show();" );
1751
- writer .println (" stopSelf();" );
1752
1754
writer .println (" }" );
1753
1755
writer .println (" }" );
1754
1756
writer .println (" onPermissionsGranted();" );
@@ -1766,23 +1768,37 @@ private void writeServicePermissionHandlers(final PrintWriter writer, String[] p
1766
1768
writer .println (" onRequestPermissionsResult(resultCode, outPermissions, grantResults);" );
1767
1769
writer .println (" }" );
1768
1770
writer .println (" };" );
1769
- writer .println (" Intent permIntent = new Intent(this, PermissionRequestActivity.class);" );
1770
- writer .println (" permIntent.putExtra(KEY_RESULT_RECEIVER, resultReceiver);" );
1771
- writer .println (" permIntent.putExtra(KEY_PERMISSIONS, permissions);" );
1772
- writer .println (" permIntent.putExtra(KEY_REQUEST_CODE, requestCode);" );
1773
- writer .println (" TaskStackBuilder stackBuilder = TaskStackBuilder.create(this);" );
1774
- writer .println (" stackBuilder.addNextIntent(permIntent);" );
1775
- writer .println (" PendingIntent permPendingIntent = stackBuilder.getPendingIntent(0, PendingIntent.FLAG_UPDATE_CURRENT);" );
1776
- writer .println (" NotificationCompat.Builder builder = new NotificationCompat.Builder(this)" );
1777
- writer .println (" .setContentTitle(\" Request\" )" );
1778
- writer .println (" .setContentText(\" Permissions\" )" );
1779
- writer .println (" .setOngoing(true)" );
1780
- writer .println (" .setAutoCancel(true)" );
1781
- writer .println (" .setWhen(0)" );
1782
- writer .println (" .setContentIntent(permPendingIntent)" );
1783
- writer .println (" .setStyle(null);" );
1784
- writer .println (" NotificationManager notificationManager = (NotificationManager)getSystemService(NOTIFICATION_SERVICE);" );
1785
- writer .println (" notificationManager.notify(requestCode, builder.build());" );
1771
+ writer .println (" final Intent permIntent = new Intent(this, PermissionRequestActivity.class);" );
1772
+ writer .println (" permIntent.putExtra(KEY_RESULT_RECEIVER, resultReceiver);" );
1773
+ writer .println (" permIntent.putExtra(KEY_PERMISSIONS, permissions);" );
1774
+ writer .println (" permIntent.putExtra(KEY_REQUEST_CODE, requestCode);" );
1775
+ writer .println (" intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);" );
1776
+ // writer.println(" TaskStackBuilder stackBuilder = TaskStackBuilder.create(this);");
1777
+ // writer.println(" stackBuilder.addNextIntent(permIntent);");
1778
+ // writer.println(" PendingIntent permPendingIntent = stackBuilder.getPendingIntent(0, PendingIntent.FLAG_UPDATE_CURRENT);");
1779
+ // writer.println(" NotificationCompat.Builder builder = new NotificationCompat.Builder(this)");
1780
+ // writer.println(" .setSmallIcon(R.drawable.icon)");
1781
+ // writer.println(" .setContentTitle(\"Requesting permissions\")");
1782
+ // writer.println(" .setContentText(\"The app need permissions to work properly\")");
1783
+ // writer.println(" .setOngoing(true)");
1784
+ // writer.println(" .setAutoCancel(true)");
1785
+ // writer.println(" .setWhen(0)");
1786
+ // writer.println(" .setContentIntent(permPendingIntent)");
1787
+ // writer.println(" .setStyle(null);");
1788
+ // writer.println(" NotificationManager notificationManager = (NotificationManager)getSystemService(NOTIFICATION_SERVICE);");
1789
+ // writer.println(" notificationManager.notify(requestCode, builder.build());");
1790
+
1791
+ // writer.println(" AlertDialog.Builder builder = new AlertDialog.Builder(this);");
1792
+ // writer.println(" builder.setMessage(\"The app needs some permissions to run.\")");
1793
+ // writer.println(" .setCancelable(false)");
1794
+ // writer.println(" .setPositiveButton(\"OK\", new DialogInterface.OnClickListener() {");
1795
+ // writer.println(" public void onClick(DialogInterface dialog, int id) {");
1796
+ // writer.println(" startActivity(permIntent);");
1797
+ // writer.println(" }");
1798
+ // writer.println(" });");
1799
+ // writer.println(" AlertDialog alert = builder.create();");
1800
+ // writer.println(" alert.show();");
1801
+ writer .println (" startActivity(permIntent);" );
1786
1802
writer .println (" }" );
1787
1803
1788
1804
// Activity that triggers the ActivityCompat.requestPermissions() call
0 commit comments