Google Cloud Platform, хранилища с Android

Я создал полное приложение (уже со многими пользователями) в Android Studio для перечисления и загрузки объектов в Google Cloud Storage Bucket с помощью API Java. У меня есть два Google Cloud Storage Buckets, оригинал и еще один для тестирования: корзина была реплицирована из-за проблем с задержкой.

Приложение используется на Ближнем Востоке, и ведро находится в "США" как "multi_regional".

Я использую это в моем файле приложения Gradle:

compile 'com.google.apis:google-api-services-storage:v1-rev79-1.22.0'

Приложение не работает в Саудовской Аравии - часто из этого кода не возвращаются результаты:

public List<String> listBucket_withPrefix(String bucketName, String prefix) throws Exception {

    Storage storage = getStorage();

    final List<String> list = new ArrayList<String>();
    final Storage.Objects.List listobjects = storage.objects().list(bucketName);
    listobjects.setPrefix(prefix);
    long maxResults = 100000L;
    listobjects.setMaxResults(maxResults);

    final List<StorageObject> items = new ArrayList<StorageObject>();

    Objects objects;

    boolean get_token = true;

    do {
        try
        {
            Log.e("CLOUDSTORAGE","GETTING BUCKET LIST");
            objects = listobjects.execute();

Этот метод вызывается из основной активности приложения в потоке:

// get cloud storage bucket file list - then send to app
public void listAllFiles_thread(final String[] params, final downloadLib newLib)
{
    new Thread(){
        public void run()
        {
            currentThread().setPriority(Thread.MIN_PRIORITY);

            String bucketName = params[0];
            String fileName = params[1];
            String destinationDirectory = params[2];
            String prefix = params[3];

            CloudStorage myStorage = new CloudStorage();
            myStorage.SetContext(myContext);

            List<String> callbackresult = null;
            try
            {
                callbackresult = myStorage.listBucket_withPrefix(bucketName, prefix);

Результаты являются неожиданными, часто нет результатов, возвращаемых из

objects = listobjects.execute();

выше в методе списка облачного хранилища listBucket_withPrefix

Я попытался использовать другое местоположение корзины: в "Азии" как "мультирегиональное".

Результаты очень странные, тестирование на Samsung S7 Android 6 и Samsung S6.

1) На Samsung S7 Android 6.0.1 видны оба этих сегмента и данные загружаются.

2) При использовании Samsung S6 Android 6.0.1 ведро будет работать как в режиме отладки, так и в обычном режиме мониторинга (игра в Android Studio). Если используется релиз APK, из метода list НИЧЕГО не возвращается.

0 ответов