|
22 | 22 | import android.net.Uri; |
23 | 23 | import android.os.Bundle; |
24 | 24 | import android.os.Environment; |
| 25 | +import android.os.Handler; |
25 | 26 | import android.support.v4.app.ActivityCompat; |
26 | 27 | import android.support.v4.content.ContextCompat; |
27 | 28 | import android.util.Base64; |
@@ -186,17 +187,6 @@ public void browseFile(final byte[] pathBytes) { |
186 | 187 | } |
187 | 188 | } |
188 | 189 |
|
189 | | - public int checkFilePermission() { |
190 | | - int result; |
191 | | - if (!permitted(Manifest.permission.WRITE_EXTERNAL_STORAGE)) { |
192 | | - checkPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE, REQUEST_STORAGE_PERMISSION); |
193 | | - result = 1; |
194 | | - } else { |
195 | | - result = 0; |
196 | | - } |
197 | | - return result; |
198 | | - } |
199 | | - |
200 | 190 | public void clearSoundQueue() { |
201 | 191 | Log.i(TAG, "clearSoundQueue"); |
202 | 192 | for (Sound sound : _sounds) { |
@@ -606,6 +596,7 @@ protected void onCreate(Bundle savedInstanceState) { |
606 | 596 | super.onCreate(savedInstanceState); |
607 | 597 | processIntent(); |
608 | 598 | processSettings(); |
| 599 | + checkFilePermission(); |
609 | 600 | } |
610 | 601 |
|
611 | 602 | @Override |
@@ -635,6 +626,18 @@ private String buildTokenForm() { |
635 | 626 | "<input value=OK name=okay type=submit style='vertical-align:top'></form>"; |
636 | 627 | } |
637 | 628 |
|
| 629 | + private void checkFilePermission() { |
| 630 | + if (!permitted(Manifest.permission.WRITE_EXTERNAL_STORAGE)) { |
| 631 | + Runnable handler = new Runnable() { |
| 632 | + @Override |
| 633 | + public void run() { |
| 634 | + checkPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE, REQUEST_STORAGE_PERMISSION); |
| 635 | + } |
| 636 | + }; |
| 637 | + new Handler().postDelayed(handler, 250); |
| 638 | + } |
| 639 | + } |
| 640 | + |
638 | 641 | private void checkPermission(final String permission, final int result) { |
639 | 642 | runOnUiThread(new Runnable() { |
640 | 643 | @Override |
|
0 commit comments