diff --git a/.idea/deploymentTargetDropDown.xml b/.idea/deploymentTargetDropDown.xml new file mode 100644 index 0000000..664ece3 --- /dev/null +++ b/.idea/deploymentTargetDropDown.xml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 39e7d31..94ff6e8 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -15,9 +15,6 @@ android:supportsRtl="true" android:theme="@style/Theme.AsgardiusS3Manager" tools:targetApi="31"> - diff --git a/app/src/main/java/asgardius/page/s3manager/FileShare.java b/app/src/main/java/asgardius/page/s3manager/FileShare.java deleted file mode 100644 index 5bbbfc4..0000000 --- a/app/src/main/java/asgardius/page/s3manager/FileShare.java +++ /dev/null @@ -1,38 +0,0 @@ -package asgardius.page.s3manager; - -import static com.amazonaws.regions.Regions.US_EAST_1; - -import androidx.appcompat.app.AppCompatActivity; - -import android.os.Bundle; - -import com.amazonaws.auth.AWSCredentials; -import com.amazonaws.auth.BasicAWSCredentials; -import com.amazonaws.regions.Region; -import com.amazonaws.services.s3.AmazonS3; -import com.amazonaws.services.s3.AmazonS3Client; -import com.amazonaws.services.s3.S3ClientOptions; - -public class FileShare extends AppCompatActivity { - String username, password, endpoint, bucket, prefix; - - @Override - protected void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - setContentView(R.layout.activity_file_share); - endpoint = getIntent().getStringExtra("endpoint"); - username = getIntent().getStringExtra("username"); - password = getIntent().getStringExtra("password"); - bucket = getIntent().getStringExtra("bucket"); - prefix = getIntent().getStringExtra("prefix"); - Region region = Region.getRegion(US_EAST_1); - S3ClientOptions s3ClientOptions = S3ClientOptions.builder().build(); - if (!endpoint.contains(getResources().getString(R.string.aws_endpoint))) { - s3ClientOptions.setPathStyleAccess(true); - } - AWSCredentials myCredentials = new BasicAWSCredentials(username, password); - AmazonS3 s3client = new AmazonS3Client(myCredentials, region); - s3client.setEndpoint(endpoint); - s3client.setS3ClientOptions(s3ClientOptions); - } -} \ No newline at end of file diff --git a/app/src/main/java/asgardius/page/s3manager/ObjectSelect.java b/app/src/main/java/asgardius/page/s3manager/ObjectSelect.java index f044f9f..959acc3 100644 --- a/app/src/main/java/asgardius/page/s3manager/ObjectSelect.java +++ b/app/src/main/java/asgardius/page/s3manager/ObjectSelect.java @@ -229,7 +229,9 @@ public class ObjectSelect extends AppCompatActivity { // Toast message on menu item clicked //Toast.makeText(MainActivity.this, "You Clicked " + menuItem.getTitle(), Toast.LENGTH_SHORT).show(); if (menuItem.getTitle() == getResources().getString(R.string.file_share)) { - share(Name.get(position).toString()); + GeneratePresignedUrlRequest request = new GeneratePresignedUrlRequest(bucket, prefix + Name.get(position).toString()); + URL objectURL = s3client.generatePresignedUrl(request); + share(objectURL.toString()); } return true; } @@ -280,15 +282,16 @@ public class ObjectSelect extends AppCompatActivity { private void share(String object) { - Toast.makeText(ObjectSelect.this, "This feature is not yet implemented", Toast.LENGTH_SHORT).show(); - Intent intent = new Intent(this, FileShare.class); - intent.putExtra("endpoint", endpoint); - intent.putExtra("username", username); - intent.putExtra("password", password); - intent.putExtra("bucket", bucket); - intent.putExtra("prefix", prefix + object); - //intent.putExtra("treelevel", treelevel+1); - startActivity(intent); + try { + + Intent shareIntent = new Intent(Intent.ACTION_SEND); + shareIntent.setType("text/plain"); + shareIntent.putExtra(Intent.EXTRA_SUBJECT, "Share Link"); + shareIntent.putExtra(Intent.EXTRA_TEXT, object); + startActivity(Intent.createChooser(shareIntent, "choose one")); + } catch(Exception e) { + Toast.makeText(getApplicationContext(),getResources().getString(R.string.media_list_fail), Toast.LENGTH_SHORT).show(); + } } } \ No newline at end of file diff --git a/app/src/main/res/layout/activity_file_share.xml b/app/src/main/res/layout/activity_file_share.xml deleted file mode 100644 index e7bffff..0000000 --- a/app/src/main/res/layout/activity_file_share.xml +++ /dev/null @@ -1,22 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 03d6ee8..062b40b 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -3,7 +3,7 @@ .amazonaws.com VideoPlayer Local database is corrupted. Please reinstall this app - Share file + Get object link Please choose an account Add Account Test credentials