mirror of
https://github.com/KokaKiwi/BarInsta
synced 2026-03-05 20:11:36 +00:00
Merge remote-tracking branch 'origin/new-posts-grid' into new-posts-grid
This commit is contained in:
commit
c305b1a69a
35 changed files with 940 additions and 927 deletions
|
|
@ -147,7 +147,7 @@ public final class PostFetcher extends AsyncTask<Void, Void, FeedModel> {
|
|||
: MediaItemType.MEDIA_TYPE_IMAGE)
|
||||
.setDisplayUrl(isChildVideo ? childNode.getString("video_url")
|
||||
: childNode.getString("display_url"))
|
||||
// .setShortCode(childNode.getString(Constants.EXTRAS_SHORTCODE))
|
||||
.setShortCode(media.getString(Constants.EXTRAS_SHORTCODE))
|
||||
.setVideoViews(isChildVideo && childNode.has("video_view_count")
|
||||
? childNode.getLong("video_view_count")
|
||||
: -1)
|
||||
|
|
|
|||
|
|
@ -425,7 +425,7 @@ public class DirectMessageThreadFragment extends Fragment {
|
|||
@Override
|
||||
public void onDestroy() {
|
||||
super.onDestroy();
|
||||
listViewModel.getList().postValue(Collections.emptyList());
|
||||
if (listViewModel != null) listViewModel.getList().postValue(Collections.emptyList());
|
||||
}
|
||||
|
||||
private void sendText(final String text, final String itemId, final boolean delete) {
|
||||
|
|
|
|||
|
|
@ -831,12 +831,14 @@ public class ProfileFragment extends Fragment implements SwipeRefreshLayout.OnRe
|
|||
}
|
||||
|
||||
private void showProfilePicDialog() {
|
||||
final FragmentManager fragmentManager = getParentFragmentManager();
|
||||
final ProfilePicDialogFragment fragment = new ProfilePicDialogFragment(profileModel.getId(), username, profileModel.getHdProfilePic());
|
||||
final FragmentTransaction ft = fragmentManager.beginTransaction();
|
||||
ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)
|
||||
.add(fragment, "profilePicDialog")
|
||||
.commit();
|
||||
if (profileModel != null) {
|
||||
final FragmentManager fragmentManager = getParentFragmentManager();
|
||||
final ProfilePicDialogFragment fragment = new ProfilePicDialogFragment(profileModel.getId(), username, profileModel.getHdProfilePic());
|
||||
final FragmentTransaction ft = fragmentManager.beginTransaction();
|
||||
ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)
|
||||
.add(fragment, "profilePicDialog")
|
||||
.commit();
|
||||
}
|
||||
}
|
||||
|
||||
private void setUsernameDelayed() {
|
||||
|
|
|
|||
|
|
@ -5,20 +5,19 @@ import java.io.Serializable;
|
|||
import awais.instagrabber.models.enums.MediaItemType;
|
||||
|
||||
public final class PostChild implements Serializable {
|
||||
private String postId;
|
||||
private MediaItemType itemType;
|
||||
private String displayUrl;
|
||||
private final String postId;
|
||||
private final String displayUrl;
|
||||
private final String shortCode;
|
||||
private final MediaItemType itemType;
|
||||
private final String thumbnailUrl;
|
||||
private final long videoViews;
|
||||
private int width;
|
||||
private int height;
|
||||
private final int width;
|
||||
private final int height;
|
||||
|
||||
public static class Builder {
|
||||
private String postId;
|
||||
private String postId, displayUrl, shortCode, thumbnailUrl;
|
||||
private MediaItemType itemType;
|
||||
private String displayUrl;
|
||||
private long videoViews;
|
||||
private String thumbnailUrl;
|
||||
private int width;
|
||||
private int height;
|
||||
|
||||
|
|
@ -27,6 +26,11 @@ public final class PostChild implements Serializable {
|
|||
return this;
|
||||
}
|
||||
|
||||
public Builder setShortCode(final String shortCode) {
|
||||
this.shortCode = shortCode;
|
||||
return this;
|
||||
}
|
||||
|
||||
public Builder setItemType(final MediaItemType itemType) {
|
||||
this.itemType = itemType;
|
||||
return this;
|
||||
|
|
@ -58,11 +62,12 @@ public final class PostChild implements Serializable {
|
|||
}
|
||||
|
||||
public PostChild build() {
|
||||
return new PostChild(postId, itemType, displayUrl, thumbnailUrl, videoViews, height, width);
|
||||
return new PostChild(postId, shortCode, itemType, displayUrl, thumbnailUrl, videoViews, height, width);
|
||||
}
|
||||
}
|
||||
|
||||
public PostChild(final String postId,
|
||||
final String shortCode,
|
||||
final MediaItemType itemType,
|
||||
final String displayUrl,
|
||||
final String thumbnailUrl,
|
||||
|
|
@ -70,6 +75,7 @@ public final class PostChild implements Serializable {
|
|||
final int height,
|
||||
final int width) {
|
||||
this.postId = postId;
|
||||
this.shortCode = shortCode;
|
||||
this.itemType = itemType;
|
||||
this.displayUrl = displayUrl;
|
||||
this.thumbnailUrl = thumbnailUrl;
|
||||
|
|
@ -82,6 +88,10 @@ public final class PostChild implements Serializable {
|
|||
return postId;
|
||||
}
|
||||
|
||||
public String getShortCode() {
|
||||
return shortCode;
|
||||
}
|
||||
|
||||
public MediaItemType getItemType() {
|
||||
return itemType;
|
||||
}
|
||||
|
|
@ -110,6 +120,7 @@ public final class PostChild implements Serializable {
|
|||
public String toString() {
|
||||
return "PostChild{" +
|
||||
"postId='" + postId + '\'' +
|
||||
", shortCode=" + shortCode +
|
||||
", itemType=" + itemType +
|
||||
", displayUrl='" + displayUrl + '\'' +
|
||||
", thumbnailUrl='" + thumbnailUrl + '\'' +
|
||||
|
|
|
|||
|
|
@ -58,9 +58,9 @@ public final class Constants {
|
|||
// spoof
|
||||
public static final String USER_AGENT = "Mozilla/5.0 (Linux; Android 8.1.0; motorola one Build/OPKS28.63-18-3; wv) " +
|
||||
"AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/70.0.3538.80 Mobile Safari/537.36 " +
|
||||
"Instagram 160.0.0.25.132 Android (27/8.1.0; 320dpi; 720x1362; motorola; motorola one; deen_sprout; qcom; pt_BR; 246889068)";
|
||||
"Instagram 161.0.0.37.121 Android (27/8.1.0; 320dpi; 720x1362; motorola; motorola one; deen_sprout; qcom; pt_BR; 248310224)";
|
||||
public static final String I_USER_AGENT =
|
||||
"Instagram 160.0.0.25.132 Android (27/8.1.0; 320dpi; 720x1362; motorola; motorola one; deen_sprout; qcom; pt_BR; 246889068)";
|
||||
"Instagram 161.0.0.37.121 Android (27/8.1.0; 320dpi; 720x1362; motorola; motorola one; deen_sprout; qcom; pt_BR; 248310224)";
|
||||
public static final String A_USER_AGENT = "https://InstaGrabber.AustinHuang.me / mailto:InstaGrabber@AustinHuang.me";
|
||||
// see https://github.com/dilame/instagram-private-api/blob/master/src/core/constants.ts
|
||||
public static final String SUPPORTED_CAPABILITIES = "[ { \"name\": \"SUPPORTED_SDK_VERSIONS\", \"value\":" +
|
||||
|
|
|
|||
|
|
@ -88,11 +88,9 @@ public final class DownloadUtils {
|
|||
switch (method) {
|
||||
case DOWNLOAD_SAVED:
|
||||
case DOWNLOAD_MAIN:
|
||||
case DOWNLOAD_DISCOVER:
|
||||
checkEachPost = true;
|
||||
break;
|
||||
case DOWNLOAD_FEED:
|
||||
checkEachPost = false;
|
||||
break;
|
||||
}
|
||||
final int itemsToDownloadSize = itemsToDownload.size();
|
||||
for (int i = 0; i < itemsToDownloadSize; i++) {
|
||||
|
|
@ -100,7 +98,7 @@ public final class DownloadUtils {
|
|||
if (!checkEachPost) {
|
||||
final boolean isSlider = itemsToDownloadSize > 1;
|
||||
final File saveFile = getDownloadSaveFile(dir,
|
||||
selectedItem.getPostId(),
|
||||
selectedItem.getShortCode(),
|
||||
isSlider ? "_slide_" + (i + 1) : "",
|
||||
selectedItem.getDisplayUrl()
|
||||
);
|
||||
|
|
@ -119,7 +117,7 @@ public final class DownloadUtils {
|
|||
final PostChild model = result.getSliderItems().get(j);
|
||||
final File saveFile = getDownloadSaveFile(
|
||||
finalDir,
|
||||
model.getPostId(),
|
||||
model.getShortCode(),
|
||||
"_slide_" + (j + 1),
|
||||
model.getDisplayUrl()
|
||||
);
|
||||
|
|
|
|||
|
|
@ -269,19 +269,19 @@ public final class ResponseBodyUtils {
|
|||
|
||||
final JSONArray users = data.getJSONArray("users");
|
||||
final int usersLen = users.length();
|
||||
final JSONArray leftusers = data.getJSONArray("left_users");
|
||||
final int leftusersLen = leftusers.length();
|
||||
final JSONArray leftusers = data.optJSONArray("left_users");
|
||||
final int leftusersLen = leftusers == null ? 0 : leftusers.length();
|
||||
final JSONArray admins = data.getJSONArray("admin_user_ids");
|
||||
final int adminsLen = admins.length();
|
||||
|
||||
final ProfileModel[] userModels = new ProfileModel[usersLen];
|
||||
for (int j = 0; j < usersLen; ++j) {
|
||||
final JSONObject userObject = users.getJSONObject(j);
|
||||
userModels[j] = new ProfileModel(userObject.getBoolean("is_private"),
|
||||
userModels[j] = new ProfileModel(userObject.optBoolean("is_private"),
|
||||
false,
|
||||
userObject.optBoolean("is_verified"),
|
||||
String.valueOf(userObject.get("pk")),
|
||||
userObject.getString("username"),
|
||||
userObject.optString("username"), // optional cuz fb users
|
||||
userObject.getString("full_name"),
|
||||
null, null,
|
||||
userObject.getString("profile_pic_url"),
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue