2015-09-03 29 views
5

Witam Próbowałem przesłać fałszywy plik tekstowy do Amazon S3. jednak nie działa, ale dziennik wygenerował identyfikator. Gdy odświeżam pulpit nawigacyjny Amazon S3. plik nie został przesłany.Przesyłanie plików nie działa z TransferUtility Amazon S3 w Androidzie

public class AmazonService extends AsyncTask<String, Boolean, Boolean> { 
    Context mContext; 
    public AmazonService(Context context) { 
     mContext = context; 
    } 

    @Override 
    protected Boolean doInBackground(String... params) { 
     CognitoCachingCredentialsProvider credentialsProvider = new CognitoCachingCredentialsProvider(
       mContext, 
       "us-east-1:ec361bf5-52b9-477b-9a68-7e2b5f70de07", // Identity Pool ID 
       Regions.US_EAST_1 // Region 
     ); 
     AmazonS3Client client = 
       new AmazonS3Client(credentialsProvider); 
     TransferUtility transferUtility = new TransferUtility(client, mContext); 
     TransferObserver observer = transferUtility.upload("elevator-app","Video/",new File("dummy.txt")); 
     Log.d("Test", observer.getId() + " " + observer.getBytesTransferred()); 

     return true; 
    } 
} 

// usługi, co jest potrzebne, aby mieć w AndroidManifest.xml

<service android:name= "com.amazonaws.mobileconnectors.s3.transferutility.TransferService" android:enabled="true" /> 

Odpowiedz

9

miałem ten sam problem, powodem było to, że mogę umieścić znacznik serwisowy poza znacznikiem aplikacji. Kiedy umieściłem znacznik serwisowy wewnątrz znacznika aplikacji, wszystko działało idealnie.

+0

Mój znacznik serwisowy znajduje się wewnątrz znacznika aplikacji, ale nadal nie działa ... proszę o pomoc – beginner

+0

w moim przypadku działa pod systemem Android w wersji 6 i niższej, ale nie w wersji 7 (nougat) –