Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Unverified Commit 157ec9bf authored by David Luhmer's avatar David Luhmer Committed by GitHub
Browse files

Add full working example to readme

parent dae981c2
Loading
Loading
Loading
Loading
+43 −19
Original line number Original line Diff line number Diff line
@@ -173,9 +173,32 @@ SingleSignOnAccount ssoAccount = AccountImporter.GetAuthTokenInSeparateThread(ge
    `NextcloudAPI` provides a method called `performNetworkRequest(NextcloudRequest request)` that allows you to handle the server response yourself.
    `NextcloudAPI` provides a method called `performNetworkRequest(NextcloudRequest request)` that allows you to handle the server response yourself.


    ```java
    ```java
    // create nextcloudAPI instance
    public class MyActivity extends AppCompatActivity {
        NextcloudAPI mNextcloudAPI;

        @Override
        protected void onStart() {
            Account account = SingleAccountHelper.GetCurrentAccount(context);
            SingleSignOnAccount ssoAccount = AccountImporter.GetAuthTokenInSeparateThread(context, account);
            SingleSignOnAccount ssoAccount = AccountImporter.GetAuthTokenInSeparateThread(context, account);
    NextcloudAPI nextcloudAPI = new NextcloudAPI(context, ssoAccount, GsonConfig.GetGson(), callback);
            mNextcloudAPI = new NextcloudAPI(context, ssoAccount, GsonConfig.GetGson(),  new NextcloudAPI.ApiConnectedListener() {
                @Override
                public void onConnected() {
                    downloadFile();
                }

                @Override
                public void onError(Exception ex) {
                    // TODO handle error here..
                }
            });
        }

        @Override
        protected void onStop() {
            // Close Service Connection to Nextcloud Files App and
            // disconnect API from Context (prevent Memory Leak)
            mNextcloudAPI.stop();
        }


        private void downloadFile() {
        private void downloadFile() {
            NextcloudRequest nextcloudRequest = new NextcloudRequest.Builder()
            NextcloudRequest nextcloudRequest = new NextcloudRequest.Builder()
@@ -184,7 +207,7 @@ SingleSignOnAccount ssoAccount = AccountImporter.GetAuthTokenInSeparateThread(ge
                    .build();
                    .build();


            try {
            try {
            InputStream inputStream = nextcloudAPI.performNetworkRequest(nextcloudRequest);
                InputStream inputStream = mNextcloudAPI.performNetworkRequest(nextcloudRequest);
                while(inputStream.available() > 0) {
                while(inputStream.available() > 0) {
                    inputStream.read();
                    inputStream.read();
                    // TODO do something useful with the data here..
                    // TODO do something useful with the data here..
@@ -195,6 +218,7 @@ SingleSignOnAccount ssoAccount = AccountImporter.GetAuthTokenInSeparateThread(ge
                e.printStackTrace();
                e.printStackTrace();
            }
            }
        }
        }
    }
    ```
    ```


## Video
## Video