mParticle Apple Media SDK
大家好!这是 mParticle Apple Media SDK 的公共仓库。我们构建了 mParticle 平台,以采用一种新的方法来处理Web和移动应用程序数据,并且该平台已发展到支持200多个服务和SDK,包括开发工具、分析、归因、消息传递和广告服务。mParticle旨在作为所有这些服务之间的连接器 - 欣赏我们的网站,或通过[email protected]与我们联系以了解更多信息。
文档
有关 mParticle Apple SDK 的完整详细文档和其他信息,您可以在我们的文档网站上找到
入门指南
请注意,此SDK作为扩展构建,并需要使用mParticle Apple SDK。
包含和初始化SDK
以下总结了将Apple Media SDK准备好运行的的主要步骤。除了以下步骤之外,我们还构建了一个示例应用程序,提供了如何向Adobe Heartbeat套件发送Media事件的深入指南。请参阅此处提供的示例应用程序
通过您的应用Podfile或Cartfile加载mParticle
pod 'mParticle-Apple-Media-SDK', '~> 1.0'
或者
github "mparticle/mparticle-apple-media-sdk" ~> 1.0
// AppDelegate.swift
import mParticle_Apple_SDK
import mParticle_Apple_Media_SDK
let options = MParticleOptions(key: "REPLACEME", secret: "REPLACEME")
let mParticle = MParticle.sharedInstance()
mParticle.start(with: options)
// Later in your code, when a user begins to engage with your content
let mediaSession = MPMediaSession.init(
coreSDK: mParticle, // mParticle SDK Instance
mediaContentId: '1234567', // Custom media ID
title: 'Funny internet cat video', // Custom media Title
duration: 120000, // Duration in milliseconds
contentType: .video, // Content Type (Video or Audio)
streamType: .onDemand) // Stream Type (OnDemand, Live, etc.)
mediaSession.logMediaSessionStart()
mediaSession.logPlay()
// If you'd like to update playhead position frequently or add custom data to each event you may pass an option object into each log method
let options = Options()
options.currentPlayheadPosition = 48000
options.customAttributes = ["testKey": "testValue"]
mediaSession.logPause(options: options)
投稿指南
在mParticle,我们引以为豪的是我们的代码,并且喜欢保持开源。如果您想贡献力量,只需创建此仓库的派生仓库,将任何代码更改推送到您的派生仓库,并向mParticle-apple-media-sdk的master
分支提交一个Pull Request。
运行测试
您可以使用命令行中的xcodebuild
,或在Xcode中使用产品 > 测试
(命令-U)。
SwiftLint
默认情况下,Xcode 会在空白行上添加尾随空格,这会导致 SwiftLint 失败。您可以在不更改 Xcode 设置的情况下,通过在提交之前运行 swiftlint autocorrect
来解决这个问题。
支持
许可证
mParticle Apple Media SDK 在 Apache 许可协议,版本 2.0 的许可下提供。更多信息请参阅 LICENSE 文件。