Skip to content
This repository was archived by the owner on Jul 27, 2019. It is now read-only.

Commit 1706a86

Browse files
committed
Handling activity results for Asset Browser.
1 parent c802e5d commit 1706a86

File tree

1 file changed

+62
-0
lines changed

1 file changed

+62
-0
lines changed

asset-browser-ui/app/src/main/java/com/adobe/assetbrowserui/MainActivity.java

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
package com.adobe.assetbrowserui;
22

33
import android.content.Intent;
4+
import android.graphics.Bitmap;
5+
import android.graphics.BitmapFactory;
46
import android.os.Bundle;
57
import android.support.design.widget.FloatingActionButton;
68
import android.support.design.widget.Snackbar;
@@ -17,7 +19,18 @@
1719
import com.adobe.creativesdk.foundation.auth.AdobeAuthSessionLauncher;
1820
import com.adobe.creativesdk.foundation.auth.AdobeUXAuthManager;
1921
import com.adobe.creativesdk.foundation.internal.utils.AdobeCSDKException;
22+
import com.adobe.creativesdk.foundation.storage.AdobePhotoAsset;
23+
import com.adobe.creativesdk.foundation.storage.AdobePhotoAssetRendition;
24+
import com.adobe.creativesdk.foundation.storage.AdobePhotoException;
25+
import com.adobe.creativesdk.foundation.storage.AdobeSelection;
26+
import com.adobe.creativesdk.foundation.storage.AdobeSelectionPhotoAsset;
2027
import com.adobe.creativesdk.foundation.storage.AdobeUXAssetBrowser;
28+
import com.adobe.creativesdk.foundation.storage.IAdobeGenericRequestCallback;
29+
30+
import java.io.ByteArrayInputStream;
31+
import java.io.InputStream;
32+
import java.util.ArrayList;
33+
import java.util.Map;
2134

2235
public class MainActivity extends AppCompatActivity {
2336

@@ -132,6 +145,55 @@ protected void onDestroy() {
132145
public void onActivityResult(int requestCode, int resultCode, Intent data) {
133146
super.onActivityResult(requestCode, resultCode, data);
134147
mAuthSessionHelper.onActivityResult(requestCode, resultCode, data);
148+
149+
if (data != null && resultCode == RESULT_OK) {
150+
switch (requestCode) {
151+
case 300: // The request code we used in launchAssetBrowser()
152+
153+
/* 1) */
154+
AdobeUXAssetBrowser.ResultProvider assetBrowserResult = new AdobeUXAssetBrowser.ResultProvider(data);
155+
ArrayList listOfSelectedAssetFiles = assetBrowserResult.getSelectionAssetArray();
156+
AdobeSelection selection = (AdobeSelection) listOfSelectedAssetFiles.get(0);
157+
158+
/* 2) */
159+
if (selection instanceof AdobeSelectionPhotoAsset) {
160+
161+
/* 3) */
162+
IAdobeGenericRequestCallback<byte[], AdobePhotoException> downloadCallBack = new IAdobeGenericRequestCallback<byte[], AdobePhotoException>() {
163+
@Override
164+
public void onCancellation() {
165+
/* 3.a) Cancellation code here */
166+
}
167+
168+
@Override
169+
public void onCompletion(byte[] bytes) {
170+
171+
/* 3.b) */
172+
InputStream inputStream = new ByteArrayInputStream(bytes);
173+
Bitmap image = BitmapFactory.decodeStream(inputStream);
174+
mSelectedAssetImageView.setImageBitmap(image);
175+
}
176+
177+
@Override
178+
public void onError(AdobePhotoException e) {
179+
/* 3.c) Error handler here */
180+
}
181+
182+
@Override
183+
public void onProgress(double v) {
184+
/* 3.d) Code for indicating download progress here */
185+
}
186+
};
187+
188+
/* 4) */
189+
AdobePhotoAsset photoAsset = ((AdobeSelectionPhotoAsset) selection).getSelectedItem();
190+
Map<String, AdobePhotoAssetRendition> renditionMap = photoAsset.getRenditions();
191+
photoAsset.downloadRendition(renditionMap.get(AdobePhotoAsset.AdobePhotoAssetRenditionImage2048), downloadCallBack);
192+
}
193+
194+
break;
195+
}
196+
}
135197
}
136198

137199
@Override

0 commit comments

Comments
 (0)