1
0
mirror of https://github.com/KokaKiwi/BarInsta synced 2024-11-22 06:37:30 +00:00

Fix some story and mediaretriever bug

This commit is contained in:
Ammar Githam 2021-05-05 18:07:48 +09:00
parent 63dc69e13c
commit 3bbafc654c
3 changed files with 19 additions and 14 deletions

View File

@ -2,7 +2,6 @@ package awais.instagrabber.utils;
import android.net.Uri; import android.net.Uri;
import android.util.Log; import android.util.Log;
import android.util.Pair;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
@ -1042,7 +1041,7 @@ public final class ResponseBodyUtils {
tappableObject.getString("question"), tappableObject.getString("question"),
tappableObject.getString("emoji"), tappableObject.getString("emoji"),
tappableObject.getBoolean("viewer_can_vote"), tappableObject.getBoolean("viewer_can_vote"),
tappableObject.getDouble("slider_vote_average"), tappableObject.optDouble("slider_vote_average"),
tappableObject.getInt("slider_vote_count"), tappableObject.getInt("slider_vote_count"),
tappableObject.optDouble("viewer_vote") tappableObject.optDouble("viewer_vote")
)); ));

View File

@ -193,8 +193,7 @@ public class StoriesService extends BaseService {
node.getInt("media_count"), node.getInt("media_count"),
false, false,
node.optBoolean("has_besties_media"))); node.optBoolean("has_besties_media")));
} } catch (Exception e) {} // to cover promotional reels with non-long user pk's
catch (Exception e) {} // to cover promotional reels with non-long user pk's
} }
final JSONArray broadcasts = new JSONObject(body).getJSONArray("broadcasts"); final JSONArray broadcasts = new JSONObject(body).getJSONArray("broadcasts");
for (int i = 0; i < broadcasts.length(); ++i) { for (int i = 0; i < broadcasts.length(); ++i) {
@ -371,7 +370,8 @@ public class StoriesService extends BaseService {
final String url = buildUrl(options); final String url = buildUrl(options);
final Call<String> userStoryCall = repository.getUserStory(url); final Call<String> userStoryCall = repository.getUserStory(url);
final boolean isLocOrHashtag = options.getType() == StoryViewerOptions.Type.LOCATION || options.getType() == StoryViewerOptions.Type.HASHTAG; final boolean isLocOrHashtag = options.getType() == StoryViewerOptions.Type.LOCATION || options.getType() == StoryViewerOptions.Type.HASHTAG;
final boolean isHighlight = options.getType() == StoryViewerOptions.Type.HIGHLIGHT || options.getType() == StoryViewerOptions.Type.STORY_ARCHIVE; final boolean isHighlight = options.getType() == StoryViewerOptions.Type.HIGHLIGHT || options
.getType() == StoryViewerOptions.Type.STORY_ARCHIVE;
userStoryCall.enqueue(new Callback<String>() { userStoryCall.enqueue(new Callback<String>() {
@Override @Override
public void onResponse(@NonNull final Call<String> call, @NonNull final Response<String> response) { public void onResponse(@NonNull final Call<String> call, @NonNull final Response<String> response) {
@ -412,7 +412,7 @@ public class StoriesService extends BaseService {
callback.onSuccess(null); callback.onSuccess(null);
} }
} catch (JSONException e) { } catch (JSONException e) {
Log.e(TAG, "Error parsing string"); Log.e(TAG, "Error parsing string", e);
} }
} }

View File

@ -57,9 +57,6 @@ import static awais.instagrabber.utils.BitmapUtils.THUMBNAIL_SIZE;
import static awais.instagrabber.utils.Constants.DOWNLOAD_CHANNEL_ID; import static awais.instagrabber.utils.Constants.DOWNLOAD_CHANNEL_ID;
import static awais.instagrabber.utils.Constants.NOTIF_GROUP_NAME; import static awais.instagrabber.utils.Constants.NOTIF_GROUP_NAME;
//import awaisomereport.LogCollector;
//import static awais.instagrabber.utils.Utils.logCollector;
public class DownloadWorker extends Worker { public class DownloadWorker extends Worker {
private static final String TAG = "DownloadWorker"; private static final String TAG = "DownloadWorker";
private static final String DOWNLOAD_GROUP = "DOWNLOAD_GROUP"; private static final String DOWNLOAD_GROUP = "DOWNLOAD_GROUP";
@ -340,13 +337,22 @@ public class DownloadWorker extends Worker {
return bitmap; return bitmap;
} }
if (mimeType.startsWith("video")) { if (mimeType.startsWith("video")) {
try (MediaMetadataRetriever retriever = new MediaMetadataRetriever()) { try {
MediaMetadataRetriever retriever = new MediaMetadataRetriever();
try { try {
retriever.setDataSource(context, uri); try {
} catch (final Exception e) { retriever.setDataSource(context, uri);
retriever.setDataSource(file.getAbsolutePath()); } catch (final Exception e) {
retriever.setDataSource(file.getAbsolutePath());
}
bitmap = retriever.getFrameAtTime();
} finally {
try {
retriever.release();
} catch (Exception e) {
Log.e(TAG, "getThumbnail: ", e);
}
} }
bitmap = retriever.getFrameAtTime();
} catch (final Exception e) { } catch (final Exception e) {
Log.e(TAG, "", e); Log.e(TAG, "", e);
} }