Latest 1.0.0
Homepage https://github.com/sgr-ksmt/SNSShare
License MIT
Platforms ios 8.0, requires ARC

Build Status
Carthage Compatible
Pod Version
[SNSShare]()
[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

With CocoaPods

SNSShare is available through CocoaPods. To install
it, simply add the following line to your Podfile:

pod 'SNSShare'

and run pod install

With Carthage

  • Add the following to your Cartfile:
github "sgr-ksmt/SNSShare"
  • Run carthage update
  • Add the framework as described.

    Details: Carthage Readme

Manual install (for iOS7)

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

Latest podspec

{
    "name": "SNSShare",
    "version": "1.0.0",
    "summary": "Text/Image/URL share to Twitter/Facebook/LINE from App in Swift.",
    "homepage": "https://github.com/sgr-ksmt/SNSShare",
    "license": "MIT",
    "authors": "Suguru Kishimoto",
    "platforms": {
        "ios": "8.0"
    },
    "source": {
        "git": "https://github.com/sgr-ksmt/SNSShare.git",
        "tag": "1.0.0"
    },
    "source_files": "SNSShare/**/*.swift",
    "requires_arc": true
}

Pin It on Pinterest

Share This