Appz 3.2.0

Appz 3.2.0

测试已测试
Lang语言 SwiftSwift
许可证 MIT
发布最新发布2018年11月
SPM支持SPM

mazyod 维护。



Appz 3.2.0

Appz📱

外部应用程序深度链接变得简单

Version Version Swift Platforms Carthage Supported Apps

突出特点

  • Web后备支持
    如果应用无法打开外部应用程序,它将回退到浏览器打开的保证成功的URL。

  • 隔离应用程序规范
    确保库可以随着支持的App数量增加而扩展是很重要的。因此,每个支持的App都独立于单独的文件实现。

  • 完全自动补全支持: 该API经过了精心设计,以便充分利用自动补全功能,因此您甚至不需要查看任何文档或代码!

  • 全面测试
    为了使规范尽可能透明,库包含测试以确保每个外部应用程序操作都有预期的结果。

功能

您可以在框架附带的游乐场中尝试它们!

简洁的语法触发深度链接

let app = UIApplication.shared
app.canOpen(Applications.Instagram())
app.open(Applications.AppStore(), action: .account(id: "395107918"))
app.open(Applications.AppSettings(), action: .open)

透明的网页后备

// In case the user doesn't have twitter installed, it will fallback to
// https://twitter.com/testUser/statuses/2
app.open(Applications.Twitter(), action: .status(id: "2",  screenName: "testUser"))

添加您的应用程序

// Applications are recommended to be part of the
// "Applications" namespace
extension Applications {
    // Define your application as a type that
    // conforms to "ExternalApplication"
    struct MyApp: ExternalApplication {

        typealias ActionType = Applications.MyApp.Action

        let scheme = "myapp:"
        let fallbackURL = ""
        let appStoreId = ""
    }
}
// Then, you define the actions your app supports
extension Applications.MyApp {

    enum Action: ExternalApplicationAction {

        case open

        // Each action should provide an app path and web path to be
        // added to the associated URL
        var paths: ActionPaths {

            switch self {
            case .open:
                return ActionPaths()
            }
        }
    }
}

app.open(Applications.MyApp(), action: .open)

支持的应用程序(目前)

应用 动作
AirLaunch 打开
AliExpress 打开
AllCast 打开
AppleMaps 打开
AppSettings 打开
AppStore 开发者,应用,评分应用
AppleWatch 打开
Audible 打开
Ayah 打开
Behance 打开,用户资料
BNR 打开
Box 打开
Buzzfeed 打开
Calendars5 打开
Camera360 打开
Careem 打开
Chromecast 打开
CirclePay 打开,请求,发送
Clips 打开
Cnet 打开
CNN 打开
Currency 打开
DailyMotion 打开
DamaKing 打开
DayCost 打开
DayOne 打开
Diigo 打开
Documents 打开
Dropbox 打开
Duolingo 打开
eBay 打开
Echofon 打开
Epson 打开
Everypost 打开
EyeEm 打开
Facebook 打开,个人资料,通知,动态圈,页面,动作
FaceTime 视频通话
FaceTime语音通话 语音通话
Feedly 打开
FileApp 打开
FindFriends 打开
FindiPhone 打开
Fitbit 打开
Flickr 打开
Flipboard 打开
FlippsTV 打开
Forest 打开
Foursquare 打开
FriendlySocial 打开
画廊 打开
Glympse 打开
GoogleCalendar 打开,创建事件
GoogleChrome 打开
GoogleDocs 打开
GoogleDrive 打开
GoogleEarth 打开
GoogleMail 打开
GoogleMaps 打开,显示路线,显示位置,搜索
GooglePhotos 打开
GooglePlus 打开
GoogleSheets 打开
GoogleSlides 打开
GoogleTranslate 打开
GroupeMe 打开
Heapo 打开
HootSuite 打开
iBooks 打开
IMDb 打开,搜索,标题,票房,放映时间,即将上映的新片,最佳影片,今日全新影片,评分最高的电影,最受欢迎的电影。
iMovie 打开
INRIXTraffic 打开
Instagram 打开,相机,图库,媒体,用户名,位置,标签
Instapaper 打开
iShows 打开
iTranslate 打开,翻译
iTunesU 打开
KakaoTalk 打开
Kayak 打开
Keeper 打开
Kik 打开
LastPass 打开
Line 打开
Linkedin 打开
邮件 撰写
Marktplaats 打开
Marvis 打开
Meerkat 打开
信息 短信
MobileMouse 打开
Mopico 打开
Moves 打开
音乐 打开
MyFitnessPal 打开
NameShark 打开
Netflix 打开
笔记 打开
NPORadio 打开
Nunl 打开
NYTimes 打开
OneMorething 打开
OneDrive 打开
OnePassword 打开
Outlook 打开,撰写
Paypal 打开
Periscope 打开
电话 打开
照片 打开
PicCollage 打开
Pinterest 打开,用户资料,搜索
Pocket 打开
播客 打开
Quora 打开
Radium 打开
提醒事项应用 打开
遥控器 打开
Rijnmond 打开
RoboForm 打开
RunKeeper 打开
ScannerPro 打开
Simplenote 打开
Skitch 打开
Skype 打开
Slack 打开,频道,直接消息,打开文件,搜索
Snapchat 打开,添加
Snapseed 打开
Songpop2 打开
Sonos 打开
Soundflake 打开
Spark 撰写
StitcherRadio 打开
Strava 打开
SubwayKorea 打开
SunriseCalendar 打开
Swarm 打开
Super-Stickman-Golf-2 打开
Talabat 打开
Tango 打开
Ted 打开
Telegram 打开,短信,从ID打开
TestFlight 打开
Tinder 打开
Trello 打开
Tubex 打开
Tumblr 打开,仪表板,探索,活动,博客,标签
Tweetbot 时间线,帖子,提及,列表,转发,喜欢,消息,状态,搜索,个人资料,关注,取消关注,喜欢,取消喜欢,转发,列表
Twitter 状态,用户句柄,用户ID,列表,帖子,搜索,时间线,提及,消息
Twitterrific 打开,提及视图,消息视图,收藏夹,搜索,推文ID,消息ID,帖子,个人资料
Uber 打开
未读 打开
Ustream 打开
Viber 打开通话标签页,打开聊天标签页
视频 打开
视图 打开
Vimeo 打开
Vine 打开,热门时间线
VIP访问 打开
Vox 打开
Voxer 打开
VSCO 打开
钱包 打开
Waze 打开,按方向导航
微信 打开
微博 打开
WhatsApp 打开
Whyd 打开
维基伴侣 打开
WordPress 打开
工作流程 打开
Yammer 打开
Yelp 打开,搜索,搜索位置,搜索分类,搜索分类位置,商家
YouTube 打开,打开视频
FRIL 打开

入门

配置Info.plist

您必须在您的app的info.plist文件中LSApplicationQueriesSchemes项下添加您想要使用的方案。更多内容请参考此处

Carthage

Carthage提供了完整支持。只需将以下行添加到您的Cartfile

github "SwiftKitz/Appz"

Cocoapods

Cocoapods提供了完整支持。只需将以下行添加到您的Podfile

pod 'Appz'

子模块

对于手动安装,您可以直接获取源代码或通过git子模块,然后只需

  • Appz.xcodeproj文件作为一个子项目拖放(确保未启用复制资源
  • 转到您的根项目设置。在“嵌入的二进制文件”下,点击“+”按钮并选择Appz.framework

动机

我在我的应用程序中集成深度链接时遭受了极多的痛苦,这超出了我愿意承认的程度。很容易忘记调用canOpenURL或某处缺少冒号。另一个痛点是翻遍网络寻找不同应用程序的不同规范。

使用这个库,您可以单独保存外部应用程序的深度链接规范,并且可以放心,因为它是开源的,并由GitHub上优秀的社区维护!

作者

Mazyod (@Mazyod)

贡献者

这个库如果不是有各种开发人员的慷慨贡献的话,不可能走这么远!

许可

Appz遵循MIT许可协议。详情请见LICENSE文件。