Browse Source

libs update, fixes search tap crashing. remove depricated classes

tags/2.0.0
M M Arif 2 months ago
parent
commit
914d5cfa26
20 changed files with 66 additions and 64 deletions
  1. +5
    -5
      app/build.gradle
  2. +0
    -1
      app/src/main/java/org/mian/gitnex/adapters/OrganizationsListAdapter.java
  3. +2
    -2
      app/src/main/java/org/mian/gitnex/fragments/BranchesFragment.java
  4. +2
    -2
      app/src/main/java/org/mian/gitnex/fragments/CollaboratorsFragment.java
  5. +2
    -2
      app/src/main/java/org/mian/gitnex/fragments/LabelsFragment.java
  6. +5
    -3
      app/src/main/java/org/mian/gitnex/fragments/MembersByOrgFragment.java
  7. +5
    -3
      app/src/main/java/org/mian/gitnex/fragments/MilestonesFragment.java
  8. +5
    -3
      app/src/main/java/org/mian/gitnex/fragments/MyRepositoriesFragment.java
  9. +5
    -3
      app/src/main/java/org/mian/gitnex/fragments/OrganizationsFragment.java
  10. +2
    -2
      app/src/main/java/org/mian/gitnex/fragments/ProfileEmailsFragment.java
  11. +2
    -2
      app/src/main/java/org/mian/gitnex/fragments/ProfileFollowersFragment.java
  12. +2
    -2
      app/src/main/java/org/mian/gitnex/fragments/ProfileFollowingFragment.java
  13. +2
    -2
      app/src/main/java/org/mian/gitnex/fragments/ReleasesFragment.java
  14. +5
    -3
      app/src/main/java/org/mian/gitnex/fragments/RepositoriesByOrgFragment.java
  15. +5
    -3
      app/src/main/java/org/mian/gitnex/fragments/RepositoriesFragment.java
  16. +4
    -17
      app/src/main/java/org/mian/gitnex/fragments/SettingsFragment.java
  17. +5
    -3
      app/src/main/java/org/mian/gitnex/fragments/StarredRepositoriesFragment.java
  18. +5
    -3
      app/src/main/java/org/mian/gitnex/fragments/TeamsByOrgFragment.java
  19. +1
    -1
      build.gradle
  20. +2
    -2
      gradle/wrapper/gradle-wrapper.properties

+ 5
- 5
app/build.gradle View File

@@ -6,8 +6,8 @@ android {
applicationId "org.mian.gitnex"
minSdkVersion 21
targetSdkVersion 28
versionCode 45
versionName "1.5.0"
versionCode 55
versionName "2.0.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
buildTypes {
@@ -23,12 +23,12 @@ android {
}

dependencies {
def lifecycle_version = "2.2.0-alpha01"
def lifecycle_version = "2.2.0-alpha04"
final def markwon_version = "3.0.0"

implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'androidx.appcompat:appcompat:1.1.0-beta01'
implementation 'com.google.android.material:material:1.1.0-alpha07'
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'com.google.android.material:material:1.1.0-alpha10'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
testImplementation 'junit:junit:4.12'


+ 0
- 1
app/src/main/java/org/mian/gitnex/adapters/OrganizationsListAdapter.java View File

@@ -76,7 +76,6 @@ public class OrganizationsListAdapter extends RecyclerView.Adapter<Organizations
@Override
public void onBindViewHolder(@NonNull OrganizationsViewHolder holder, int position) {


UserOrganizations currentItem = orgList.get(position);
holder.mTextView2.setVisibility(View.GONE);



+ 2
- 2
app/src/main/java/org/mian/gitnex/fragments/BranchesFragment.java View File

@@ -6,7 +6,7 @@ import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProviders;
import androidx.lifecycle.ViewModelProvider;
import androidx.recyclerview.widget.DividerItemDecoration;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
@@ -125,7 +125,7 @@ public class BranchesFragment extends Fragment {

private void fetchDataAsync(String instanceUrl, String instanceToken, String owner, String repo) {

BranchesViewModel branchesModel = ViewModelProviders.of(this).get(BranchesViewModel.class);
BranchesViewModel branchesModel = new ViewModelProvider(this).get(BranchesViewModel.class);

branchesModel.getBranchesList(instanceUrl, instanceToken, owner, repo).observe(this, new Observer<List<Branches>>() {
@Override


+ 2
- 2
app/src/main/java/org/mian/gitnex/fragments/CollaboratorsFragment.java View File

@@ -6,7 +6,7 @@ import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProviders;
import androidx.lifecycle.ViewModelProvider;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@@ -98,7 +98,7 @@ public class CollaboratorsFragment extends Fragment {

private void fetchDataAsync(String instanceUrl, String instanceToken, String owner, String repo) {

CollaboratorsViewModel collaboratorsModel = ViewModelProviders.of(this).get(CollaboratorsViewModel.class);
CollaboratorsViewModel collaboratorsModel = new ViewModelProvider(this).get(CollaboratorsViewModel.class);

collaboratorsModel.getCollaboratorsList(instanceUrl, instanceToken, owner, repo).observe(this, new Observer<List<Collaborators>>() {
@Override


+ 2
- 2
app/src/main/java/org/mian/gitnex/fragments/LabelsFragment.java View File

@@ -6,7 +6,7 @@ import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProviders;
import androidx.lifecycle.ViewModelProvider;
import androidx.recyclerview.widget.DividerItemDecoration;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
@@ -142,7 +142,7 @@ public class LabelsFragment extends Fragment {

private void fetchDataAsync(String instanceUrl, String instanceToken, String owner, String repo) {

LabelsViewModel labelsModel = ViewModelProviders.of(this).get(LabelsViewModel.class);
LabelsViewModel labelsModel = new ViewModelProvider(this).get(LabelsViewModel.class);

labelsModel.getLabelsList(instanceUrl, instanceToken, owner, repo).observe(this, new Observer<List<Labels>>() {
@Override


+ 5
- 3
app/src/main/java/org/mian/gitnex/fragments/MembersByOrgFragment.java View File

@@ -6,7 +6,7 @@ import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProviders;
import androidx.lifecycle.ViewModelProvider;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuInflater;
@@ -81,7 +81,7 @@ public class MembersByOrgFragment extends Fragment {

private void fetchDataAsync(String instanceUrl, String instanceToken, String owner) {

MembersByOrgViewModel membersModel = ViewModelProviders.of(this).get(MembersByOrgViewModel.class);
MembersByOrgViewModel membersModel= new ViewModelProvider(this).get(MembersByOrgViewModel.class);

membersModel.getMembersList(instanceUrl, instanceToken, owner).observe(this, new Observer<List<UserInfo>>() {
@Override
@@ -125,7 +125,9 @@ public class MembersByOrgFragment extends Fragment {

@Override
public boolean onQueryTextChange(String newText) {
adapter.getFilter().filter(newText);
if(mGridView.getAdapter() != null) {
adapter.getFilter().filter(newText);
}
return false;
}
});


+ 5
- 3
app/src/main/java/org/mian/gitnex/fragments/MilestonesFragment.java View File

@@ -6,7 +6,7 @@ import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProviders;
import androidx.lifecycle.ViewModelProvider;
import androidx.recyclerview.widget.DividerItemDecoration;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
@@ -150,7 +150,7 @@ public class MilestonesFragment extends Fragment {

private void fetchDataAsync(String instanceUrl, String instanceToken, String owner, String repo) {

MilestonesViewModel msModel = ViewModelProviders.of(this).get(MilestonesViewModel.class);
MilestonesViewModel msModel = new ViewModelProvider(this).get(MilestonesViewModel.class);

msModel.getMilestonesList(instanceUrl, instanceToken, owner, repo).observe(this, new Observer<List<Milestones>>() {
@Override
@@ -195,7 +195,9 @@ public class MilestonesFragment extends Fragment {

@Override
public boolean onQueryTextChange(String newText) {
adapter.getFilter().filter(newText);
if(mRecyclerView.getAdapter() != null) {
adapter.getFilter().filter(newText);
}
return false;
}
});


+ 5
- 3
app/src/main/java/org/mian/gitnex/fragments/MyRepositoriesFragment.java View File

@@ -7,7 +7,7 @@ import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProviders;
import androidx.lifecycle.ViewModelProvider;
import androidx.recyclerview.widget.DividerItemDecoration;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
@@ -171,7 +171,7 @@ public class MyRepositoriesFragment extends Fragment {

private void fetchDataAsync(String instanceUrl, String instanceToken, String username) {

MyRepositoriesViewModel myRepoModel = ViewModelProviders.of(this).get(MyRepositoriesViewModel.class);
MyRepositoriesViewModel myRepoModel = new ViewModelProvider(this).get(MyRepositoriesViewModel.class);

myRepoModel.getCurrentUserRepositories(instanceUrl, instanceToken, username).observe(this, new Observer<List<UserRepositories>>() {
@Override
@@ -216,7 +216,9 @@ public class MyRepositoriesFragment extends Fragment {

@Override
public boolean onQueryTextChange(String newText) {
adapter.getFilter().filter(newText);
if(mRecyclerView.getAdapter() != null) {
adapter.getFilter().filter(newText);
}
return false;
}
});


+ 5
- 3
app/src/main/java/org/mian/gitnex/fragments/OrganizationsFragment.java View File

@@ -6,7 +6,7 @@ import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProviders;
import androidx.lifecycle.ViewModelProvider;
import androidx.recyclerview.widget.DividerItemDecoration;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
@@ -141,7 +141,7 @@ public class OrganizationsFragment extends Fragment {

private void fetchDataAsync(String instanceUrl, String instanceToken) {

OrganizationListViewModel orgModel = ViewModelProviders.of(this).get(OrganizationListViewModel.class);
OrganizationListViewModel orgModel = new ViewModelProvider(this).get(OrganizationListViewModel.class);

orgModel.getUserOrgs(instanceUrl, instanceToken).observe(this, new Observer<List<UserOrganizations>>() {
@Override
@@ -186,7 +186,9 @@ public class OrganizationsFragment extends Fragment {

@Override
public boolean onQueryTextChange(String newText) {
adapter.getFilter().filter(newText);
if(mRecyclerView.getAdapter() != null) {
adapter.getFilter().filter(newText);
}
return false;
}
});


+ 2
- 2
app/src/main/java/org/mian/gitnex/fragments/ProfileEmailsFragment.java View File

@@ -5,7 +5,7 @@ import android.os.Bundle;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProviders;
import androidx.lifecycle.ViewModelProvider;
import androidx.recyclerview.widget.DividerItemDecoration;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
@@ -109,7 +109,7 @@ public class ProfileEmailsFragment extends Fragment {

private void fetchDataAsync(String instanceUrl, String instanceToken) {

ProfileEmailsViewModel profileEmailModel = ViewModelProviders.of(this).get(ProfileEmailsViewModel.class);
ProfileEmailsViewModel profileEmailModel = new ViewModelProvider(this).get(ProfileEmailsViewModel.class);

profileEmailModel.getEmailsList(instanceUrl, instanceToken).observe(this, new Observer<List<Emails>>() {
@Override


+ 2
- 2
app/src/main/java/org/mian/gitnex/fragments/ProfileFollowersFragment.java View File

@@ -6,7 +6,7 @@ import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProviders;
import androidx.lifecycle.ViewModelProvider;
import androidx.recyclerview.widget.DividerItemDecoration;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
@@ -108,7 +108,7 @@ public class ProfileFollowersFragment extends Fragment {

private void fetchDataAsync(String instanceUrl, String instanceToken) {

ProfileFollowersViewModel pfModel = ViewModelProviders.of(this).get(ProfileFollowersViewModel.class);
ProfileFollowersViewModel pfModel = new ViewModelProvider(this).get(ProfileFollowersViewModel.class);

pfModel.getFollowersList(instanceUrl, instanceToken).observe(this, new Observer<List<UserInfo>>() {
@Override


+ 2
- 2
app/src/main/java/org/mian/gitnex/fragments/ProfileFollowingFragment.java View File

@@ -6,7 +6,7 @@ import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProviders;
import androidx.lifecycle.ViewModelProvider;
import androidx.recyclerview.widget.DividerItemDecoration;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
@@ -108,7 +108,7 @@ public class ProfileFollowingFragment extends Fragment {

private void fetchDataAsync(String instanceUrl, String instanceToken) {

ProfileFollowingViewModel pfModel = ViewModelProviders.of(this).get(ProfileFollowingViewModel.class);
ProfileFollowingViewModel pfModel = new ViewModelProvider(this).get(ProfileFollowingViewModel.class);

pfModel.getFollowingList(instanceUrl, instanceToken).observe(this, new Observer<List<UserInfo>>() {
@Override


+ 2
- 2
app/src/main/java/org/mian/gitnex/fragments/ReleasesFragment.java View File

@@ -6,7 +6,7 @@ import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProviders;
import androidx.lifecycle.ViewModelProvider;
import androidx.recyclerview.widget.DividerItemDecoration;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
@@ -141,7 +141,7 @@ public class ReleasesFragment extends Fragment {

private void fetchDataAsync(String instanceUrl, String instanceToken, String owner, String repo) {

ReleasesViewModel releasesModel = ViewModelProviders.of(this).get(ReleasesViewModel.class);
ReleasesViewModel releasesModel = new ViewModelProvider(this).get(ReleasesViewModel.class);

releasesModel.getReleasesList(instanceUrl, instanceToken, owner, repo).observe(this, new Observer<List<Releases>>() {
@Override


+ 5
- 3
app/src/main/java/org/mian/gitnex/fragments/RepositoriesByOrgFragment.java View File

@@ -6,7 +6,7 @@ import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProviders;
import androidx.lifecycle.ViewModelProvider;
import androidx.recyclerview.widget.DividerItemDecoration;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
@@ -123,7 +123,7 @@ public class RepositoriesByOrgFragment extends Fragment {

private void fetchDataAsync(String instanceUrl, String instanceToken, String owner) {

RepositoriesByOrgViewModel orgRepoModel = ViewModelProviders.of(this).get(RepositoriesByOrgViewModel.class);
RepositoriesByOrgViewModel orgRepoModel = new ViewModelProvider(this).get(RepositoriesByOrgViewModel.class);

orgRepoModel.getRepositoriesByOrg(instanceUrl, instanceToken, owner).observe(this, new Observer<List<UserRepositories>>() {
@Override
@@ -168,7 +168,9 @@ public class RepositoriesByOrgFragment extends Fragment {

@Override
public boolean onQueryTextChange(String newText) {
adapter.getFilter().filter(newText);
if(mRecyclerView.getAdapter() != null) {
adapter.getFilter().filter(newText);
}
return false;
}
});


+ 5
- 3
app/src/main/java/org/mian/gitnex/fragments/RepositoriesFragment.java View File

@@ -6,7 +6,7 @@ import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProviders;
import androidx.lifecycle.ViewModelProvider;
import androidx.recyclerview.widget.DividerItemDecoration;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
@@ -144,7 +144,7 @@ public class RepositoriesFragment extends Fragment {

private void fetchDataAsync(String instanceUrl, String instanceToken) {

RepositoriesListViewModel repoModel = ViewModelProviders.of(this).get(RepositoriesListViewModel.class);
RepositoriesListViewModel repoModel = new ViewModelProvider(this).get(RepositoriesListViewModel.class);

repoModel.getUserRepositories(instanceUrl, instanceToken).observe(this, new Observer<List<UserRepositories>>() {
@Override
@@ -189,7 +189,9 @@ public class RepositoriesFragment extends Fragment {

@Override
public boolean onQueryTextChange(String newText) {
adapter.getFilter().filter(newText);
if(mRecyclerView.getAdapter() != null) {
adapter.getFilter().filter(newText);
}
return false;
}
});


+ 4
- 17
app/src/main/java/org/mian/gitnex/fragments/SettingsFragment.java View File

@@ -185,10 +185,6 @@ public class SettingsFragment extends Fragment {
tinyDb.putInt("codeBlockId", i);

switch (codeBlockList[i]) {
case "Green - Black":
tinyDb.putInt("codeBlockColor", getResources().getColor(R.color.colorLightGreen));
tinyDb.putInt("codeBlockBackground", getResources().getColor(R.color.black));
break;
case "White - Black":
tinyDb.putInt("codeBlockColor", getResources().getColor(R.color.white));
tinyDb.putInt("codeBlockBackground", getResources().getColor(R.color.black));
@@ -248,9 +244,6 @@ public class SettingsFragment extends Fragment {
tinyDb.putInt("langId", i);

switch (langList[i]) {
case "English":
tinyDb.putString("locale", "en");
break;
case "French":
tinyDb.putString("locale", "fr");
break;
@@ -309,16 +302,10 @@ public class SettingsFragment extends Fragment {
tinyDb.putString("timeStr", timeList[i]);
tinyDb.putInt("timeId", i);

switch (timeList[i]) {
case "Pretty":
tinyDb.putString("dateFormat", "pretty");
break;
case "Normal":
tinyDb.putString("dateFormat", "normal");
break;
default:
tinyDb.putString("dateFormat", "pretty");
break;
if ("Normal".equals(timeList[i])) {
tinyDb.putString("dateFormat", "normal");
} else {
tinyDb.putString("dateFormat", "pretty");
}

dialogInterfaceTime.dismiss();


+ 5
- 3
app/src/main/java/org/mian/gitnex/fragments/StarredRepositoriesFragment.java View File

@@ -7,7 +7,7 @@ import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProviders;
import androidx.lifecycle.ViewModelProvider;
import androidx.recyclerview.widget.DividerItemDecoration;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
@@ -166,7 +166,7 @@ public class StarredRepositoriesFragment extends Fragment {

private void fetchDataAsync(String instanceUrl, String instanceToken) {

StarredRepositoriesViewModel starredRepoModel = ViewModelProviders.of(this).get(StarredRepositoriesViewModel.class);
StarredRepositoriesViewModel starredRepoModel = new ViewModelProvider(this).get(StarredRepositoriesViewModel.class);

starredRepoModel.getUserStarredRepositories(instanceUrl, instanceToken).observe(this, new Observer<List<UserRepositories>>() {
@Override
@@ -211,7 +211,9 @@ public class StarredRepositoriesFragment extends Fragment {

@Override
public boolean onQueryTextChange(String newText) {
adapter.getFilter().filter(newText);
if(mRecyclerView.getAdapter() != null) {
adapter.getFilter().filter(newText);
}
return false;
}
});


+ 5
- 3
app/src/main/java/org/mian/gitnex/fragments/TeamsByOrgFragment.java View File

@@ -6,7 +6,7 @@ import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProviders;
import androidx.lifecycle.ViewModelProvider;
import androidx.recyclerview.widget.DividerItemDecoration;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
@@ -124,7 +124,7 @@ public class TeamsByOrgFragment extends Fragment {

private void fetchDataAsync(String instanceUrl, String instanceToken, String owner) {

TeamsByOrgViewModel teamModel = ViewModelProviders.of(this).get(TeamsByOrgViewModel.class);
TeamsByOrgViewModel teamModel = new ViewModelProvider(this).get(TeamsByOrgViewModel.class);

teamModel.getTeamsByOrg(instanceUrl, instanceToken, owner).observe(this, new Observer<List<Teams>>() {
@Override
@@ -169,7 +169,9 @@ public class TeamsByOrgFragment extends Fragment {

@Override
public boolean onQueryTextChange(String newText) {
adapter.getFilter().filter(newText);
if(mRecyclerView.getAdapter() != null) {
adapter.getFilter().filter(newText);
}
return false;
}
});


+ 1
- 1
build.gradle View File

@@ -7,7 +7,7 @@ buildscript {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.4.0'
classpath 'com.android.tools.build:gradle:3.5.0'

}
}


+ 2
- 2
gradle/wrapper/gradle-wrapper.properties View File

@@ -1,6 +1,6 @@
#Thu Apr 18 19:09:46 SGT 2019
#Thu Sep 12 16:12:36 SGT 2019
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-5.1.1-all.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-5.4.1-all.zip

Loading…
Cancel
Save