SNSShare 1.0.0

SNSShare 1.0.0

TestsTested
LangLanguage SwiftSwift
License MIT
ReleasedLast Release Mar 2016
SPMSupports SPM

Maintained by sgr-ksmt.



SNSShare 1.0.0

  • By
  • Suguru Kishimoto

SNSShare

Warning: iOS9

Over iOS9.0,Requires LSApplicationQueriesSchemes for canOpenURL. If you want to enable sharing to LINE, add line to LSApplicationQueriesSchemes

<key>LSApplicationQueriesSchemes</key>
<array>
  <string>line</string>
</array>

How to use

  • Create SNSData
let data = SNSShareData {
    $0.text = "text"
    $0.images = [image]
    $0.urls = [url]
}
  • share to SNS (e.g. Twitter)
data.post(.Twitter) { result in
    switch result {
    case .Success(let posted):
      print(posted ? "Posted!!" : "Canceled!!")
    case .Failure(let e):
      print(e)
    }
}

If a user posted share data, return result Success by completion closure. else cancelled or other error occurred, return result Failure.

Other methods

  • SNSShare#availableSNSList()
    Return SNS service list that user can use.

ErrorType

  • NotAvailable(SNSType) If a user cannot share to SNS service.
  • EmptyData : If SNSShareData is EmptyData (has no text, image and url).
  • URIEncodingError : Failed URI encoding When select LINE and share text and URL.
  • UnknownError

Demo is here

Requirements

  • iOS 8.0+
  • Xcode 7.0+(Swift 2+)

Installation and Setup

Manual install (for iOS7)

Clone this repository, then add SNSShare.swift to your Xcode Project.