2525package com .team980 .thunderscout .ximport ;
2626
2727import android .Manifest ;
28+ import android .content .ContentResolver ;
2829import android .content .Intent ;
2930import android .content .pm .PackageManager ;
3031import android .net .Uri ;
@@ -55,7 +56,7 @@ public class ImportActivity extends AppCompatActivity implements View.OnClickLis
5556
5657 private Button buttonImport ;
5758
58- private File file ;
59+ private Uri fileUri ;
5960
6061 @ Override
6162 protected void onCreate (Bundle savedInstanceState ) {
@@ -76,13 +77,13 @@ protected void onCreate(Bundle savedInstanceState) {
7677 public void onClick (View v ) {
7778 if (v .getId () == R .id .buttonSelectFile ) {
7879 Intent intent = new Intent (Intent .ACTION_GET_CONTENT );
79- intent .setType ("file/csv " );
80- Intent i = Intent .createChooser (intent , "File " );
80+ intent .setType ("*/* " );
81+ Intent i = Intent .createChooser (intent , "Open .csv " );
8182 startActivityForResult (i , 2 );
8283 } else if (v .getId () == R .id .buttonImport ) {
8384 if (ActivityCompat .checkSelfPermission (this , Manifest .permission .READ_EXTERNAL_STORAGE )
8485 == PackageManager .PERMISSION_GRANTED ) {
85- CSVImportTask task = new CSVImportTask (this , file );
86+ CSVImportTask task = new CSVImportTask (this , fileUri );
8687 task .execute ();
8788 } else {
8889 //Request permission
@@ -101,7 +102,7 @@ protected void onActivityResult(int requestCode, int resultCode, Intent data) {
101102 if (resultCode == RESULT_OK ){
102103 fileInfo .setText (data .getData ().getPath ());
103104
104- file = new File ( data .getData (). getPath () );
105+ fileUri = data .getData ();
105106
106107 buttonImport .setEnabled (true );
107108 }
@@ -113,7 +114,7 @@ public void onRequestPermissionsResult(int requestCode, @NonNull String[] permis
113114 if (requestCode == 1 ) {
114115 // If request is cancelled, the result arrays are empty.
115116 if (grantResults .length > 0 && grantResults [0 ] == PackageManager .PERMISSION_GRANTED ) {
116- CSVImportTask task = new CSVImportTask (this , file );
117+ CSVImportTask task = new CSVImportTask (this , fileUri );
117118 task .execute ();
118119 } else {
119120 //Why would you ever deny the permission?
0 commit comments