All Projects → sourov2008 → GoogleDriveBrowser

sourov2008 / GoogleDriveBrowser

Licence: MIT license
Goole Drive Download Library for iOS

Programming Languages

objective c
16641 projects - #2 most used programming language
ruby
36898 projects - #4 most used programming language

Projects that are alternatives of or similar to GoogleDriveBrowser

Google Drive Ftp Adapter
Google Drive FTP Adapter to connect to google drive through the FTP protocol
Stars: ✭ 292 (+2146.15%)
Mutual labels:  driver, google-drive
JFXGoogleDrive
A JavaFX Google Drive Client (For Demonstration Purposes Only).
Stars: ✭ 29 (+123.08%)
Mutual labels:  google-drive, google-drive-api
MiXLab
MiXLab is a mix of multiple amazing Colab Notebooks found on the internet such as rcloneLab, RLabClone, Torrent to Google Drive Downloader and some more.
Stars: ✭ 143 (+1000%)
Mutual labels:  googledrive, google-drive
Gcsf
a FUSE file system based on Google Drive
Stars: ✭ 2,251 (+17215.38%)
Mutual labels:  google-drive, google-drive-api
stremio-gdrive
Stremio addon for fetching videos from your google drive.
Stars: ✭ 73 (+461.54%)
Mutual labels:  google-drive, google-drive-api
craneoperator
Gives you a simple web interface for browsing around a Docker Registry
Stars: ✭ 116 (+792.31%)
Mutual labels:  browse
AQtion
Aquantia AQC multigigabit NIC linux driver (atlantic) - development preview
Stars: ✭ 60 (+361.54%)
Mutual labels:  driver
swGL
A multithreaded software implementation of OpenGL 1.3 in C++.
Stars: ✭ 50 (+284.62%)
Mutual labels:  driver
Torrent-To-Google-Drive-Downloader
Simple notebook to stream torrent files to Google Drive using Google Colab and python3.
Stars: ✭ 256 (+1869.23%)
Mutual labels:  google-drive
ld-r
Linked Data Reactor (LD-R)
Stars: ✭ 127 (+876.92%)
Mutual labels:  browse
MLLineChart
A simple Line Chart Lib
Stars: ✭ 28 (+115.38%)
Mutual labels:  pod
FIFO-Driver
Character device driver working as FIFO pipe, created with a Linux Kernel module (SMP-Safe). Works on Android's kernel.
Stars: ✭ 12 (-7.69%)
Mutual labels:  driver
csv2plist.py
Convert a .csv to .plist array for usage with iOS / OSX app development
Stars: ✭ 29 (+123.08%)
Mutual labels:  plist
sqlite3
The fastest and correct module for SQLite3 in Deno.
Stars: ✭ 143 (+1000%)
Mutual labels:  driver
ByteSizeLibPascal
TByteSize is a utility record that makes byte size representation in code easier by removing ambiguity of the value being represented.
Stars: ✭ 24 (+84.62%)
Mutual labels:  bytes
PagedLists
Paginated UITableView and UICollectionViews for iOS.
Stars: ✭ 69 (+430.77%)
Mutual labels:  pod
iOSUtilitiesSource
IOS Utilities Library for Swift
Stars: ✭ 46 (+253.85%)
Mutual labels:  pod
AutoFetcher-IG-Stories-to-GDrive
A Google Apps Script for deploying a web application that automatically fetches the latest available IG Stories of a target Instagram user to your Google Drive.
Stars: ✭ 54 (+315.38%)
Mutual labels:  google-drive
rtw88-usb
rtw88 family usb driver for linux rtl8723du rtl8822bu rtl8821cu rtl8822cu
Stars: ✭ 40 (+207.69%)
Mutual labels:  driver
SearchX
The Ultimate Telegram Bot for Google Drive
Stars: ✭ 161 (+1138.46%)
Mutual labels:  google-drive

googledrivebanner

GoogleDriveBrowser provides a simple and effective way to browse, and download files using the Google Drive SDK. In a few minutes you can install Google Drive Browser to configure google credential first.

Features

  • Google Drive browse and Download file .
  • There is a default query for fetching file but you may customise your query .
  • You may open your file with browser(safari).
  • Pull to refresh
  • Download progress shown (Both both progressbar and label)
  • Download success toast

User Interface

GoogleDriveBrowser has a simple UITableView interface . You can customise cell icon and donwload icon . By default there is a file fetching Loading indicator , Download progress bar with donwload progress text . Added tableview pull to refresh and file overview.

googledrivebrowser

Files

When a user taps on download button file will download and called the delegate method while downloading file .Also Called delegate method both success/failoure completion

Folder

In folder case recursively browse untill file not found.

Project Details

Learn more about the project requirements, licensing, contributions, and setup.

Requirements

Greater than or eqaul iOS 9

Contributions

Any contribution is more than welcome! You can contribute through pull requests and issues on GitHub.

Installation - Via Cocoapods

Follow the instructions below to properly integrate GoogleDriveBrowser into your project.

 pod ‘GoogleDriveBrowser’

Google Configuration (Both Objective C and Swift)

  1. Configure Google Drive (Follow the Step 1)Turn on the Drive API and setup your app. Follow the Step 1

  2. Drag and drop downloaded Credentials.plist file into your project

  3. Open the Credentials.plist file, and look for the REVERSED_CLIENT_ID key. Copy the value of that key, and paste it into the URL Schemes box on the configuration view.

Setup in Obj C

  1. Add in AppDelegate.h file

     #import <Google/SignIn.h> 
    
  2. In Appdelegate.m file add the following lines of code . Replace YOUR_CLIENT_ID with your CLIENT_ID from credentials.plist file.

     - (BOOL)application:(UIApplication *)application
     didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
     // Initialize Google sign-in.
     
     #warning relpace the string with your CLIENT_ID from credentials.plist
     [GIDSignIn sharedInstance].clientID = @"<YOUR_CLIENT_ID>";
     
     return YES;
     }
     
     - (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation {
     return [[GIDSignIn sharedInstance] handleURL:url sourceApplication:sourceApplication annotation:annotation];
     }
    
  3. in your desired class in .h file add following code

       #import "SDGDTableViewController.h"
    

Implement the
SDGDTableViewControllerDelegate Once implemented, you'll recieve calls when a file is downloaded or fails to download or progressValue. Like

      @interface YourClassName : UIViewController <SDGDTableViewControllerDelegate>
  1. in your desired class in .m file add this line of code

    UIStoryboard* storyboard = [UIStoryboard storyboardWithName:@"SDGD"
                                                     bundle:nil];
    SDGDTableViewController *obj=
        [storyboard instantiateViewControllerWithIdentifier:@"SDGDTableViewController"];
    
    obj.delegate = self;
    UINavigationController *nav = [[UINavigationController alloc]initWithRootViewController:obj];
    [self presentViewController:nav animated:YES completion:nil];
    

Setup in Swift

Follow the Steps in Google Configuration (Both Objective C and Swift)

  1. Add the following line into your into your Bridging header file

    #import  <GoogleDriveBrowser/SDGDTableViewController.h>
    
  2. Add the following line into your into your AppDelegate.swift file

    import Google
    
  3. Add the following line into your into your applicationDidFinishLaunching function in AppDelegate.swift file .Replace YOUR_CLIENT_ID with your CLIENT_ID from credentials.plist file.

    GIDSignIn.sharedInstance().clientID = "<YOUR_CLIENT_ID>"
    
  4. Add the following functions into your into your AppDelegate.swift file

    func application(_ application: UIApplication, open url: URL, sourceApplication: String?, annotation: Any) -> Bool {
    return GIDSignIn.sharedInstance().handle(url,
                                            sourceApplication: sourceApplication,
                                            annotation: annotation)
    }
    
    @available(iOS 9.0, *)
    func application(_ app: UIApplication, open url: URL,
                options: [UIApplicationOpenURLOptionsKey : Any]) -> Bool {
    let sourceApplication = options[UIApplicationOpenURLOptionsKey.sourceApplication] as? String
    let annotation = options[UIApplicationOpenURLOptionsKey.annotation]
    return GIDSignIn.sharedInstance().handle(url,
                                            sourceApplication: sourceApplication,
                                            annotation: annotation)
    
}
  1. Add the following lines of code In your desired class

    var  obj = SDGDTableViewController() ;
    let storyboard : UIStoryboard = UIStoryboard(name: "SDGD", bundle: nil)
    obj = storyboard.instantiateViewController(withIdentifier: "SDGDTableViewController") as! SDGDTableViewController
    obj.delegate = self
    let nav = UINavigationController.init(rootViewController: obj)
    self.present(nav, animated: true, completion: {
    })
    

By Default library image will load on google file view . You may change those images

Installation - Manual (Both Objective C and Swift)

  • Download the project and add SDGDTableViewController.h and SDGDTableViewController.m file in your project
  • Follow this step given above ### Google Configuration (Both Objective C and Swift)
  • include those library via pod
  • pod 'GoogleAPIClientForREST/Drive', '~> 1.2.1'
  • pod 'Google/SignIn', '~> 3.0.3'

Example Project Run

  • Download GoogleDriveBrowser
  • Install the podfile of Example folder
  • Follow Google Configure Setups
  • Open GoogleDriveBrowser.xcworkspace file and run the project.

Delegate Methods

Most important delegates methods are given here . See more delegate methods on SDGDTableViewController.h file

byte by byte download progress call

  /**
  *  File download Progress value . You may use your own progressbar presentation depends on this values
  *  @param downloaded  is download data size instant thread
  *  @param totalDownloaded is  Total downloaded data size
  *  @param fileInfo  from file info you may get file size
  */
 - (void)delegateDownloadProgress: (GTLRDrive_File *)fileInfo downloadByte:(float)downloaded totalRecived : (float)totalDownloaded;

Download Success Call

  /**
   *  Download successfull
   *  Delegate Downloaded Data with File Info.
   *
   */
  - (void)delegateDownloadedFileWithFileDetails: (GTLRDrive_File *)fileInfo downloadedData: (NSData*)data;

Your Customize query

  /**
  *  Returns Query parameter.  Like this format
  *   query.fields = @"kind,nextPageToken,files(mimeType,id,kind,name,webViewLink,thumbnailLink,fileExtension,size, createdTime,modifiedTime)";
  *   query.pageSize = 1000;
  *   @param folderID is required for query coommand  Like In parents 'folderID'
  *
  */
  - (GTLRDriveQuery_FilesList *)delegateSetQueryWithFolderID : (NSString*)folderID;

Enjoy GoogleDriveBrowser

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].