|
1 | 1 | package com.adobe.assetbrowserui;
|
2 | 2 |
|
3 | 3 | import android.content.Intent;
|
| 4 | +import android.graphics.Bitmap; |
| 5 | +import android.graphics.BitmapFactory; |
4 | 6 | import android.os.Bundle;
|
5 | 7 | import android.support.design.widget.FloatingActionButton;
|
6 | 8 | import android.support.design.widget.Snackbar;
|
|
17 | 19 | import com.adobe.creativesdk.foundation.auth.AdobeAuthSessionLauncher;
|
18 | 20 | import com.adobe.creativesdk.foundation.auth.AdobeUXAuthManager;
|
19 | 21 | 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; |
20 | 27 | 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; |
21 | 34 |
|
22 | 35 | public class MainActivity extends AppCompatActivity {
|
23 | 36 |
|
@@ -132,6 +145,55 @@ protected void onDestroy() {
|
132 | 145 | public void onActivityResult(int requestCode, int resultCode, Intent data) {
|
133 | 146 | super.onActivityResult(requestCode, resultCode, data);
|
134 | 147 | 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 | + } |
135 | 197 | }
|
136 | 198 |
|
137 | 199 | @Override
|
|
0 commit comments