本申請要求于2013年12月31日提交的美國專利申請?zhí)?4/145,135的權(quán)益,其全部通過引用并入本文中。
技術(shù)領(lǐng)域
所公開的主題涉及用于管理指向安裝于用戶設(shè)備上的多個(gè)應(yīng)用的通知的方法、系統(tǒng)和介質(zhì)。
背景技術(shù):
推送通知服務(wù)通常被用于將消息發(fā)送至各種計(jì)算設(shè)備,諸如移動(dòng)設(shè)備。更特別地,推送通知經(jīng)常被應(yīng)用發(fā)布者和/或開發(fā)者用于將信息發(fā)送給應(yīng)用的用戶或者鼓勵(lì)繼續(xù)使用應(yīng)用。例如,用于訪問諸如視頻的媒體內(nèi)容的應(yīng)用的發(fā)布者或開發(fā)者能夠在用戶可能感興趣的新視頻變得可用時(shí)發(fā)送推送通知。作為另一示例,用于訪問社交網(wǎng)絡(luò)服務(wù)的應(yīng)用的發(fā)布者或開發(fā)者能夠在與用戶相關(guān)聯(lián)的社交聯(lián)系發(fā)布或者共享可能使用戶感興趣的某些東西時(shí)發(fā)送推送通知。由于發(fā)送推送通知的應(yīng)用的數(shù)目持續(xù)快速增長,因此可以發(fā)送包含相同或相似信息的對于多個(gè)不同應(yīng)用的通知。這可能會(huì)令多次接收到來自不同應(yīng)用的相同信息的用戶感到惱怒。
因此,期望提供用于管理指向安裝于用戶設(shè)備上的多個(gè)應(yīng)用的通知的方法、系統(tǒng)和介質(zhì)。
技術(shù)實(shí)現(xiàn)要素:
根據(jù)所公開主題的各種實(shí)施例,提供用于管理指向安裝于用戶設(shè)備上的多個(gè)應(yīng)用的通知的方法、系統(tǒng)和介質(zhì)。
根據(jù)所公開主題的一些實(shí)施例,提供一種用于管理通知的方法,該方法包括:使用硬件處理器來接收對于第一應(yīng)用的第一通知;確定與所述第一應(yīng)用相關(guān)聯(lián)的第一用戶設(shè)備;接收對于第二應(yīng)用的第二通知;確定與所述第二應(yīng)用相關(guān)聯(lián)的第二用戶設(shè)備;確定所述第一用戶設(shè)備與所述第二用戶設(shè)備是相同的設(shè)備;確定所述第一通知與所述第二通知是對應(yīng)的通知;確定所述第一通知具有高于所述第二通知的優(yōu)先級(jí);在確定所述第一通知具有高于所述第二通知的優(yōu)先級(jí)后,將所述第一通知發(fā)送至所述第一用戶設(shè)備;以及阻止所述第二通知被發(fā)送至所述第一用戶設(shè)備。
根據(jù)所公開主題的一些實(shí)施例,提供一種用于管理通知的系統(tǒng),該系統(tǒng)包括:硬件處理器,該硬件處理器被配置成:接收對于第一應(yīng)用的第一通知;確定與所述第一應(yīng)用相關(guān)聯(lián)的第一用戶設(shè)備;接收對于第二應(yīng)用的第二通知;確定與所述第二應(yīng)用相關(guān)聯(lián)的第二用戶設(shè)備;確定所述第一用戶設(shè)備與所述第二用戶設(shè)備是相同的設(shè)備;確定所述第一通知與所述第二通知是對應(yīng)的通知;確定所述第一通知具有高于所述第二通知的優(yōu)先級(jí);在確定所述第一通知具有高于所述第二通知的優(yōu)先級(jí)后,將所述第一通知發(fā)送至所述第一用戶設(shè)備;以及阻止所述第二通知被發(fā)送至所述第一用戶設(shè)備。
根據(jù)所公開主題的一些實(shí)施例,提供一種包含計(jì)算機(jī)可執(zhí)行指令的非瞬時(shí)計(jì)算機(jī)可讀介質(zhì),所述計(jì)算機(jī)可執(zhí)行指令在由處理器執(zhí)行時(shí)使得所述處理器執(zhí)行一種用于管理通知的方法,該方法包括:接收對于第一應(yīng)用的第一通知;確定與所述第一應(yīng)用相關(guān)聯(lián)的第一用戶設(shè)備;接收對于第二應(yīng)用的第二通知;確定與所述第二應(yīng)用相關(guān)聯(lián)的第二用戶設(shè)備;確定所述第一用戶設(shè)備與所述第二用戶設(shè)備是相同的設(shè)備;確定所述第一通知與所述第二通知是對應(yīng)的通知;確定所述第一通知具有高于所述第二通知的優(yōu)先級(jí);在確定所述第一通知具有高于所述第二通知的優(yōu)先級(jí)后,將所述第一通知發(fā)送至所述第一用戶設(shè)備;以及阻止所述第二通知被發(fā)送至所述第一用戶設(shè)備。
根據(jù)所公開主題的一些實(shí)施例,提供一種用于管理通知的系統(tǒng),該系統(tǒng)包括:用于接收對于第一應(yīng)用的第一通知的裝置;用于確定與所述第一應(yīng)用相關(guān)聯(lián)的第一用戶設(shè)備的裝置;用于接收對于第二應(yīng)用的第二通知的裝置;用于確定與所述第二應(yīng)用相關(guān)聯(lián)的第二用戶設(shè)備的裝置;用于確定所述第一用戶設(shè)備與所述第二用戶設(shè)備是相同的設(shè)備的裝置;用于確定所述第一通知與所述第二通知是對應(yīng)的通知的裝置;用于確定所述第一通知具有高于所述第二通知的優(yōu)先級(jí)的裝置;用于在確定所述第一通知具有高于所述第二通知的優(yōu)先級(jí)后將所述第一通知發(fā)送至所述第一用戶設(shè)備的裝置;以及用于阻止所述第二通知被發(fā)送至所述第一用戶設(shè)備的裝置。
在一些實(shí)施例中,所述系統(tǒng)進(jìn)一步包括:用于接收唯一地識(shí)別安裝于所述第一用戶設(shè)備上的所述第一應(yīng)用的應(yīng)用標(biāo)識(shí)符的裝置;以及用于基于與所述應(yīng)用標(biāo)識(shí)符相關(guān)聯(lián)的設(shè)備來確定所述第一用戶設(shè)備的設(shè)備標(biāo)識(shí)符的裝置。
在一些實(shí)施例中,用于確定所述第一用戶設(shè)備與所述第二用戶設(shè)備是相同的設(shè)備的裝置進(jìn)一步包括用于確定所述第一設(shè)備的所述設(shè)備標(biāo)識(shí)符與所述第二設(shè)備的第二設(shè)備標(biāo)識(shí)符相同的裝置。
在一些實(shí)施例中,用于確定所述第一通知與所述第二通知是對應(yīng)的通知的裝置包括:用于確定所述第一通知的內(nèi)容與所述第二通知的內(nèi)容之間的差距的裝置;以及用于基于所確定的差距低于閾值而確定內(nèi)容相同的裝置。
在一些實(shí)施例中,用于確定所述第一通知與所述第二通知是對應(yīng)的通知的裝置包括:用于確定與所述第一通知相關(guān)聯(lián)的第一通知標(biāo)識(shí)符的裝置;用于確定與所述第二通知相關(guān)聯(lián)的第二通知標(biāo)識(shí)符的裝置;以及用于基于所述第一通知標(biāo)識(shí)符與所述第二通知標(biāo)識(shí)符之間的對應(yīng)性而確定所述第一通知與所述第二通知是對應(yīng)的通知的裝置。
在一些實(shí)施例中,用于確定所述第一通知具有高于所述第二通知的優(yōu)先級(jí)的裝置包括用于確定所述第一通知和所述第二通知針對通過使用所述第一應(yīng)用能獲得但通過使用所述第二應(yīng)用不能獲得的內(nèi)容的裝置。
在一些實(shí)施例中,用于確定所述第一通知具有高于所述第二通知的優(yōu)先級(jí)的裝置包括用于確定所述第一應(yīng)用是由所述第一通知和所述第二通知指定為具有高于所述第二應(yīng)用的優(yōu)先級(jí)的裝置。
在一些實(shí)施例中,用于確定所述第一通知具有高于所述第二通知的優(yōu)先級(jí)的裝置包括確定所述第一應(yīng)用是所述第二應(yīng)用的下級(jí)應(yīng)用。
附圖說明
在結(jié)合下列附圖加以考慮時(shí),參照下文對所公開主題的具體描述,能夠更完整地領(lǐng)會(huì)所公開主題的各種目的、特征和優(yōu)勢,其中類似的附圖標(biāo)記識(shí)別類似的元素。
圖1示出了根據(jù)所公開主題的一些實(shí)施例的用于管理指向安裝于用戶設(shè)備上的多個(gè)應(yīng)用的通知的過程的示例。
圖2示出了根據(jù)所公開主題的一些實(shí)施例的用于管理對于安裝于用戶設(shè)備上的多個(gè)應(yīng)用所接收到的通知的過程的示例。
圖3示出了根據(jù)所公開主題的一些實(shí)施例的用于呈現(xiàn)由移動(dòng)設(shè)備接收的推送通知的各種技術(shù)的示例。
圖4示出了根據(jù)所公開主題的一些實(shí)施例的適于實(shí)施本文所述的用于管理指向安裝于用戶設(shè)備上的多個(gè)應(yīng)用的通知的機(jī)制的說明性系統(tǒng)的示意圖。
圖5示出了根據(jù)所公開主題的一些實(shí)施例的能夠使用圖4的移動(dòng)設(shè)備、推送通知服務(wù)器以及應(yīng)用發(fā)布者服務(wù)器的詳細(xì)示例。
圖6示出了根據(jù)所公開主題的一些實(shí)施例的用于管理指向安裝于用戶設(shè)備上的多個(gè)應(yīng)用的通知的說明性流程的示例。
圖7示出了根據(jù)所公開主題的一些實(shí)施例的用于管理對于安裝于用戶設(shè)備上的多個(gè)應(yīng)用所接收到的通知的說明性流程的示例。
具體實(shí)施方式
根據(jù)各種實(shí)施例,提供用于管理指向安裝于用戶設(shè)備上的多個(gè)應(yīng)用的通知的機(jī)制(其能夠包括方法、系統(tǒng)和/或媒介)。
在一些實(shí)施例中,本文所述的機(jī)制能夠確定將哪些通知呈現(xiàn)給用戶,更特別地,將來自多個(gè)對應(yīng)的推送通知中的哪些推送通知呈現(xiàn)給用戶。例如,如果用戶設(shè)備具有被設(shè)置成接收推送通知的兩個(gè)或更多安裝的相關(guān)應(yīng)用,則那些相關(guān)應(yīng)用的發(fā)布者或開發(fā)者可以發(fā)送對于相關(guān)應(yīng)用中的至少兩個(gè)的相同或相似的推送通知。在更特別的示例中,用戶設(shè)備能夠具有安裝在其上的用于訪問來自媒體內(nèi)容遞送平臺(tái)(例如,視頻共享和/或聚合服務(wù))的媒體內(nèi)容的應(yīng)用,以及用于訪問與媒體內(nèi)容遞送平臺(tái)相關(guān)的社交網(wǎng)絡(luò)服務(wù)(例如,社交網(wǎng)絡(luò)服務(wù)可以由相同的實(shí)體所擁有)的應(yīng)用。在另一更特別的示例中,用戶設(shè)備能夠具有安裝在其上的能夠被配置成訪問來自各種域的電子郵件的、用于接收電子郵件的應(yīng)用(例如,能夠被配置成從多個(gè)電子郵件服務(wù)中檢索電子郵件的通用電子郵件客戶端),以及用于接收發(fā)送至特定域和/或電子郵件服務(wù)的電子郵件的應(yīng)用(例如,用于接收來自特定電子郵件服務(wù)的電子郵件的專用電子郵件客戶端)。盡管推送通知能夠被用于增加用戶對特定應(yīng)用的使用,但用過多推送通知涌向用戶可以使得用戶選擇完全停止接收推送通知,這可能事與愿違。
在一些實(shí)施例中,當(dāng)接收到對于兩個(gè)不同的應(yīng)用的兩個(gè)推送通知時(shí),本文所述的機(jī)制能夠確定這兩個(gè)推送通知是否是對應(yīng)的推送通知。對于不同應(yīng)用的兩個(gè)或更多的推送通知能夠出于任何適當(dāng)?shù)脑蚨菍?yīng)的通知,諸如兩個(gè)或更多的通知包括類似的內(nèi)容,引用類似的媒體內(nèi)容或諸如此類,或者出于任何其他適當(dāng)原因。例如,能夠接收對于媒體內(nèi)容遞送平臺(tái)的應(yīng)用的第一推送通知,該第一推送通知告知用戶從用戶已訂閱的頻道中有可獲得的新視頻,并且能夠接收對于社交網(wǎng)絡(luò)服務(wù)應(yīng)用的第二推送通知,該第二推送通知告知用戶從媒體遞送平臺(tái)中可獲得相同的新視頻,因?yàn)橛脩粼谏缃痪W(wǎng)絡(luò)服務(wù)上關(guān)注了發(fā)布視頻的藝術(shù)家。
在一些實(shí)施例中,當(dāng)對于不同應(yīng)用的兩個(gè)或更多的推送通知被確定成是對應(yīng)的通知時(shí),本文所述的機(jī)制能夠使得向用戶呈現(xiàn)對應(yīng)的通知中的一個(gè),并且使得阻止向用戶呈現(xiàn)另一個(gè)對應(yīng)的通知(或多個(gè)通知)。此外,能夠在對應(yīng)的通知當(dāng)中確定優(yōu)先級(jí),以確定對應(yīng)的通知當(dāng)中的哪一個(gè)被呈現(xiàn)給用戶。如下例如結(jié)合圖1的112所述,能夠基于任何適當(dāng)?shù)囊粋€(gè)準(zhǔn)則或多個(gè)準(zhǔn)則來確定優(yōu)先級(jí)。例如,能夠?qū)﹃P(guān)于新視頻的媒體內(nèi)容遞送平臺(tái)應(yīng)用的的通知給予高于社交網(wǎng)絡(luò)服務(wù)應(yīng)用的類似通知的優(yōu)先級(jí),因?yàn)橐曨l可在媒體內(nèi)容遞送平臺(tái)上獲得。
轉(zhuǎn)至圖1,根據(jù)所公開主題的一些實(shí)施例,示出用于管理指向安裝于用戶設(shè)備上的多個(gè)應(yīng)用的通知的過程100的示例。在一些實(shí)施例中,過程100能夠由提供推送通知的一個(gè)設(shè)備或多個(gè)設(shè)備與這樣的通知所針對的多個(gè)設(shè)備之間的中間設(shè)備來執(zhí)行。例如,過程100能夠由推送通知服務(wù)器執(zhí)行,該推送通知服務(wù)器響應(yīng)于接收到將這樣的推送通知發(fā)送至安裝于用戶設(shè)備上的應(yīng)用的特定實(shí)例的請求,將推送通知發(fā)送至特定用戶設(shè)備。在102處,過程100能夠接收用于發(fā)送與安裝于用戶設(shè)備上的第一應(yīng)用相關(guān)的推送通知的請求。例如,過程100能夠接收發(fā)送與訪問與媒體內(nèi)容平臺(tái)相關(guān)聯(lián)的媒體內(nèi)容的應(yīng)用相關(guān)的推送通知的請求。這樣的推送通知能夠包括關(guān)于用戶可能感興趣的媒體內(nèi)容項(xiàng)目的信息、關(guān)于用戶可能感興趣的媒體內(nèi)容的來源(例如,作家、藝術(shù)家、頻道等)的信息,等等。
在一些實(shí)施例中,用戶設(shè)備能夠是移動(dòng)設(shè)備,諸如智能電話或者其他蜂窩電話、平板計(jì)算機(jī)、可穿戴式計(jì)算機(jī)、個(gè)人數(shù)字助理、便攜式音樂播放器、便攜式視頻播放器、手持式游戲機(jī)或者任何其他適當(dāng)?shù)囊苿?dòng)設(shè)備。附加地或替選地,用戶設(shè)備能夠是任何適當(dāng)?shù)挠?jì)算設(shè)備,諸如膝上型計(jì)算機(jī)、桌面型計(jì)算機(jī)、機(jī)頂盒、游戲機(jī)、數(shù)字媒體接收器或者任何其他適當(dāng)?shù)挠?jì)算設(shè)備。
在一些實(shí)施例中,在102處能夠響應(yīng)于任何適當(dāng)?shù)膭?dòng)作來發(fā)送用于發(fā)送與第一應(yīng)用相關(guān)的推送通知的請求。例如,安裝于用戶設(shè)備上的操作系統(tǒng)或者其他軟件平臺(tái)能夠被編程,以使得安裝于用戶設(shè)備上的應(yīng)用能夠請求接收與應(yīng)用相關(guān)的推送通知。特定的應(yīng)用是否請求推送通知能夠基于任何適當(dāng)?shù)那闆r或者情況的組合。例如,特定的應(yīng)用是否請求推送通知能夠基于應(yīng)用的發(fā)布者和/或開發(fā)者對應(yīng)用進(jìn)行的編程(例如,應(yīng)用的發(fā)布者和/或開發(fā)者是否將該特征包括為應(yīng)用的一部分)。作為另一示例,特定的應(yīng)用是否請求推送通知能夠基于由用戶管理的設(shè)置(例如,用戶能夠改變設(shè)置以允許或阻止推送通知被發(fā)送給特定的應(yīng)用或者全部應(yīng)用)。作為又一示例,確定是否發(fā)送通知能夠基于設(shè)備的狀態(tài)(例如,基于設(shè)備是否開機(jī),設(shè)備的發(fā)送器和/或接收器是否是激活的,設(shè)備是否處于“免打擾”模式等)。
在一些實(shí)施例中,能夠由用戶設(shè)備在任何適當(dāng)?shù)臅r(shí)間發(fā)送用于發(fā)送與第一應(yīng)用相關(guān)的推送通知的請求。例如,當(dāng)將用戶設(shè)備開機(jī)時(shí)、當(dāng)周期性地(例如,每三十秒、每分鐘、每三十分鐘等)激活用戶設(shè)備的發(fā)送器和/或接收器時(shí)、當(dāng)用戶設(shè)備的網(wǎng)絡(luò)地址改變時(shí)或者在任何其他適當(dāng)?shù)臅r(shí)間時(shí),能夠發(fā)送用于發(fā)送推送通知的請求。此外,用戶設(shè)備能夠使用任何適當(dāng)?shù)募夹g(shù)或者多種技術(shù)來發(fā)送用于發(fā)送與第一應(yīng)用相關(guān)的推送通知的請求。例如,能夠使用用戶設(shè)備所連接的網(wǎng)絡(luò)來將用于發(fā)送推送通知的請求發(fā)送給推送通知服務(wù)器。作為另一示例,所述請求能夠被發(fā)送至與推送通知服務(wù)器相關(guān)聯(lián)的特定網(wǎng)絡(luò)地址(例如,因特網(wǎng)協(xié)議(IP)地址、媒體訪問控制(MAC)地址或者任何其他適當(dāng)?shù)木W(wǎng)絡(luò)地址)、被發(fā)送至推送通知服務(wù)器的特定端口,或者使用任何其他技術(shù)或者多種技術(shù)來發(fā)送所述請求。
在一些實(shí)施例中,用于發(fā)送與第一應(yīng)用相關(guān)的推送通知的請求能夠包括任何適當(dāng)?shù)男畔ⅰ@?,所述請求能夠包括第一?yīng)用的應(yīng)用標(biāo)識(shí)符,該應(yīng)用標(biāo)識(shí)符能夠識(shí)別第一應(yīng)用的特定實(shí)例。在更特別的示例中,當(dāng)應(yīng)用被安裝在設(shè)備上時(shí),應(yīng)用的每個(gè)實(shí)例都能夠被分配標(biāo)識(shí)符。該標(biāo)識(shí)符能夠被用于向特定的應(yīng)用寄送信息(諸如推送通知)并且能夠獨(dú)立于在其上安裝了應(yīng)用的用戶設(shè)備的當(dāng)前網(wǎng)絡(luò)地址。作為另一示例,所述請求能夠包括在其上安裝了第一應(yīng)用的特定實(shí)例的用戶設(shè)備的網(wǎng)絡(luò)地址。作為又一示例,所述請求能夠包括由用戶設(shè)備的制造商或者由設(shè)備的操作系統(tǒng)指定的設(shè)備標(biāo)識(shí)符,該設(shè)備標(biāo)識(shí)符能夠被用于不考慮當(dāng)前網(wǎng)絡(luò)地址而唯一地識(shí)別特定的設(shè)備。此外,任何其他適當(dāng)?shù)男畔⒍寄軌虮话ㄔ谟糜诎l(fā)送與第一應(yīng)用相關(guān)的推送通知的請求中。
附加地或替選地,諸如設(shè)備標(biāo)識(shí)符、安全令牌或者任何其他適當(dāng)?shù)男畔⒌哪承┬畔⒛軌虮簧蔀橛捎糜诎l(fā)送與第一應(yīng)用相關(guān)的推送通知的請求發(fā)起的過程的一部分。例如,第一應(yīng)用能夠使得用戶設(shè)備請求發(fā)送與第一應(yīng)用相關(guān)的推送通知。這能夠使得推送通知服務(wù)器生成安全令牌,該安全令牌能夠被用于驗(yàn)證發(fā)送給第一應(yīng)用的特定實(shí)例的推送通知。該安全令牌能夠當(dāng)其隨同用于將推送通知發(fā)送至安裝于用戶設(shè)備或多個(gè)用戶設(shè)備上的應(yīng)用的特定實(shí)例或多個(gè)特定實(shí)例的請求時(shí),由推送通知服務(wù)器用于識(shí)別用戶設(shè)備和/或安裝于用戶設(shè)備上的第一應(yīng)用的特定實(shí)例。
在一些實(shí)施例中,第一應(yīng)用能夠使得安全令牌和/或任何其他適當(dāng)?shù)男畔⒈话l(fā)送至應(yīng)用發(fā)布者。例如,安全令牌能夠隨同能夠與應(yīng)用標(biāo)識(shí)符一起被發(fā)送,應(yīng)用標(biāo)識(shí)符能夠由應(yīng)用發(fā)布者用于識(shí)別應(yīng)用的特定實(shí)例。識(shí)別特定實(shí)例能夠被用于以某些用戶為目標(biāo)發(fā)送推送通知的一些情形中。作為另一示例,被用于登錄到與第一應(yīng)用相關(guān)聯(lián)的服務(wù)的用戶名或者從用戶名推導(dǎo)出的信息(例如,從用戶名推導(dǎo)出的散列)能夠被發(fā)送至應(yīng)用發(fā)布者。該用戶名信息例如能夠由應(yīng)用發(fā)布者用于識(shí)別賬號(hào)、特性、設(shè)置以及任何其他與登錄到第一應(yīng)用的特定用戶名相關(guān)聯(lián)的信息。在一些實(shí)施例中,第二應(yīng)用能夠是安裝于用戶設(shè)備上的任何適當(dāng)?shù)膽?yīng)用。
應(yīng)指出的是,在本文所述的機(jī)制采集關(guān)于用戶的個(gè)人信息或者能夠利用個(gè)人信息的情況下,能夠向用戶提供控制程序或特征是否采集用戶信息(例如,存儲(chǔ)于用戶設(shè)備上的關(guān)于用戶動(dòng)作的信息、存儲(chǔ)于諸如服務(wù)器的遠(yuǎn)程設(shè)備上的關(guān)于用戶動(dòng)作或偏好的信息等)或者控制是否和/或如何發(fā)送推送通知的機(jī)會(huì)。此外,在存儲(chǔ)或者使用某些數(shù)據(jù)之前,能夠以一種或多種方式對其進(jìn)行處理,以致去除個(gè)人可識(shí)別信息。例如,用戶的身份能夠被處理,以致沒有個(gè)人可識(shí)別信息能夠被用來確定用戶,或者在獲得位置信息的情況下用戶的地理位置能夠被泛化(諸如到城市、郵政編碼或者州級(jí)),以致用戶的特定位置不能夠被確定。因此,用戶能夠控制關(guān)于用戶如何采集信息以及內(nèi)容服務(wù)器如何使用信息。
在104處,過程100能夠接收用于發(fā)送與安裝于用戶設(shè)備上的第二應(yīng)用相關(guān)的推送通知的請求。如上結(jié)合102所述,第二請求能夠包括與第一請求類似的信息(例如,應(yīng)用標(biāo)識(shí)符、用戶設(shè)備標(biāo)識(shí)符等)。
在一些實(shí)施例中,第二應(yīng)用能夠以某種方式與第一應(yīng)用相關(guān)。例如,第一應(yīng)用和第二應(yīng)用能夠均被用于訪問相同內(nèi)容的至少一部分。在該示例中,第一應(yīng)用和第二應(yīng)用能夠提供到相同內(nèi)容的至少一部分的不同切入點(diǎn)。在更特別的示例中,如果第一應(yīng)用是用于訪問來自媒體內(nèi)容平臺(tái)(例如,視頻共享平臺(tái))的媒體內(nèi)容的應(yīng)用,第二應(yīng)用能夠是用于訪問來自媒體內(nèi)容平臺(tái)的特定用戶的媒體內(nèi)容(例如,由特定的發(fā)布者或藝術(shù)家上傳到視頻共享平臺(tái)的內(nèi)容)的應(yīng)用。作為更特別的示例,第一應(yīng)用能夠是用于訪問通過視頻共享平臺(tái)使其基本上可獲得的全部視頻的應(yīng)用,以及第二應(yīng)用能夠是用于訪問通過特定頻道使其可獲得的視頻的應(yīng)用,所述視頻可通過相同的視頻共享平臺(tái)來獲得。在該更特別的示例中,第二應(yīng)用能夠還提供到除了來自特定頻道的視頻以外的其他視頻的訪問,但能夠優(yōu)先提供到來自該頻道的視頻的訪問。此外,能夠基于例如與頻道關(guān)聯(lián)的用戶(例如,樂隊(duì)、喜劇演員、大學(xué)等)來定制第二應(yīng)用的用戶界面。作為另一示例,第一應(yīng)用能夠是用于訪問來自媒體內(nèi)容平臺(tái)的媒體內(nèi)容的應(yīng)用,以及第二應(yīng)用能夠是用于訪問與媒體內(nèi)容平臺(tái)相關(guān)的社交網(wǎng)絡(luò)服務(wù)(例如,由與媒體內(nèi)容平臺(tái)相同的實(shí)體提供的社交網(wǎng)絡(luò)服務(wù))的應(yīng)用。作為又一示例,第一應(yīng)用和第二應(yīng)用能夠基于應(yīng)用是由相同的實(shí)體產(chǎn)生的事實(shí)(例如第一應(yīng)用與第二應(yīng)用具有共同的開發(fā)者)而相關(guān)。作為還一示例,第一應(yīng)用與第二應(yīng)用能夠以任何適當(dāng)?shù)姆绞蕉嚓P(guān),諸如通過第一應(yīng)用的發(fā)布者與第二應(yīng)用的發(fā)布者之間的交叉促進(jìn)協(xié)議。
在106處,過程100能夠接收用于發(fā)送對于用戶設(shè)備上的第一應(yīng)用的第一推送通知的請求。在一些實(shí)施例中,能夠從應(yīng)用發(fā)布者服務(wù)器接收這樣的請求,該應(yīng)用發(fā)布者服務(wù)器發(fā)送用于將一個(gè)推送通知或多個(gè)推送通知發(fā)送至第一應(yīng)用的一個(gè)特定實(shí)例或多個(gè)特定實(shí)例的請求。例如,應(yīng)用的發(fā)布者或開發(fā)者能夠使用服務(wù)器或者其他適當(dāng)?shù)挠?jì)算設(shè)備,以向推送通知服務(wù)器(例如,正執(zhí)行過程100的服務(wù)器或者其他適當(dāng)?shù)挠?jì)算設(shè)備)發(fā)送用于將第一推送通知發(fā)送至第一應(yīng)用的一個(gè)特定實(shí)例或多個(gè)特定實(shí)例的請求。
此外,在一些實(shí)施例中,這樣的請求能夠包括將推送通知發(fā)送至與第一應(yīng)用的一個(gè)特定實(shí)例相關(guān)聯(lián)的一個(gè)特定設(shè)備或多個(gè)特定設(shè)備所需的任何適當(dāng)?shù)男畔?,或者與該信息相關(guān)聯(lián)。例如,所述請求能夠包括關(guān)于第一應(yīng)用的一個(gè)特定實(shí)例或多個(gè)特定實(shí)例的識(shí)別信息,或者與該識(shí)別信息相關(guān)聯(lián)。如上所討論,這樣的識(shí)別信息能夠包括與第一應(yīng)用的一個(gè)特定實(shí)例相關(guān)聯(lián)的應(yīng)用標(biāo)識(shí)符、設(shè)備標(biāo)識(shí)符、安全令牌等。作為另一示例,所述請求能夠包括使用推送通知將呈現(xiàn)的內(nèi)容或者與該內(nèi)容相關(guān)聯(lián)。在更特別的示例中,所述內(nèi)容能夠包括文本、圖像、視頻、由第一應(yīng)用將執(zhí)行的指令、任何其他適當(dāng)?shù)膬?nèi)容和/或這樣的內(nèi)容的任何適當(dāng)?shù)慕M合。作為又一示例,所述請求能夠包括指示了可以對應(yīng)推送通知所發(fā)送的應(yīng)用的身份的信息和/或指示了這些應(yīng)用中的每一個(gè)關(guān)于當(dāng)前推送通知的優(yōu)先級(jí)的信息,或者與該信息相關(guān)聯(lián)。在更特別的示例中,所述請求能夠包括可以接收對應(yīng)通知的另一應(yīng)用(例如,第二應(yīng)用)的身份以及第一應(yīng)用是否具有高于第二應(yīng)用的優(yōu)先級(jí)的指示。作為還一示例,所述請求能夠包括指示了應(yīng)如何呈現(xiàn)推送通知、如果存在則應(yīng)以推送通知呈現(xiàn)哪些用戶界面元素等的信息,或者與該信息相關(guān)聯(lián)。
在一些實(shí)施例中,所述請求能夠包括推送通知的識(shí)別信息或者與該識(shí)別信息相關(guān)聯(lián)。例如,每個(gè)推送通知能夠具有相關(guān)聯(lián)的識(shí)別信息。該識(shí)別信息能夠包括關(guān)于推送通知的各種信息,諸如應(yīng)用發(fā)布者服務(wù)器發(fā)送推送通知的時(shí)間、識(shí)別推送通知的內(nèi)容或類別的代碼和/或任何其他適當(dāng)?shù)淖R(shí)別信息。
在一些實(shí)施例中,過程100能夠?qū)κ盏降耐扑屯ㄖ_定用戶設(shè)備的身份和/或網(wǎng)絡(luò)地址,推送通知作為接收用于發(fā)送第一推送通知的請求的一部分或者響應(yīng)于接收該請求而指向該用戶設(shè)備。任何適當(dāng)?shù)募夹g(shù)或者多種技術(shù)能夠被用于確定推送通知所指向的身份和/或網(wǎng)絡(luò)地址。例如,諸如推送通知服務(wù)器的執(zhí)行過程100的設(shè)備能夠保存與應(yīng)用的特定實(shí)例和/或特定設(shè)備相關(guān)聯(lián)的應(yīng)用標(biāo)識(shí)符、設(shè)備標(biāo)識(shí)符、網(wǎng)絡(luò)地址等的數(shù)據(jù)庫。作為另一示例,執(zhí)行過程100的設(shè)備能夠基于包括在用于發(fā)送第一推送通知的請求中或者與該請求相關(guān)聯(lián)的安全令牌或其他安全信息來確定設(shè)備標(biāo)識(shí)符和/或網(wǎng)絡(luò)地址。任何適當(dāng)?shù)募夹g(shù)或者多種技術(shù)或者這些和其他技術(shù)的任何適當(dāng)?shù)慕M合能夠被用于確定用戶設(shè)備的身份和/或網(wǎng)絡(luò)地址。
在108處,過程100能夠接收用于發(fā)送對于用戶設(shè)備上的第二應(yīng)用的第二推送通知的請求。在108處所接收的請求除了指向不同的第二應(yīng)用之外,能夠類似于如上結(jié)合106所述的接收的請求。
在110處,過程100能夠確定第一推送通知與第二推送通知是否是對應(yīng)的通知。任何適當(dāng)?shù)募夹g(shù)或者多種技術(shù)能夠被用于確定第一推送通知與第二推送通知是否是對應(yīng)的通知。例如,過程100能夠確定第一推送通知的內(nèi)容是否與第二推送通知的內(nèi)容相同。作為另一示例,過程100能夠?qū)⒌谝煌扑屯ㄖ膬?nèi)容與第二推送通知的內(nèi)容進(jìn)行比較并且確定兩個(gè)通知之間的相似度(或者相差度)分?jǐn)?shù)。如果相似度分?jǐn)?shù)高于閾值(或者如果相差度分?jǐn)?shù)低于閾值),則兩個(gè)通知能夠被確定為對應(yīng)的通知。作為又一示例,過程100能夠確定第一應(yīng)用與第二應(yīng)用是否是相關(guān)的應(yīng)用,這能夠基于過程100可獲得的任何適當(dāng)?shù)男畔泶_定,諸如相關(guān)應(yīng)用的數(shù)據(jù)庫中的信息、包括在第一推送通知和/或第二推送通知中的信息或者任何其他適當(dāng)?shù)男畔?。作為還一示例,過程100能夠確定第一推送通知與第二推送通知的識(shí)別信息的至少一部分是否足夠相似或相同。如果識(shí)別信息的至少一部分足夠相似或相同,則過程100能夠確定通知是對應(yīng)的通知。
作為進(jìn)一步示例,過程100能夠確定第一推送通知與第二推送通知是否同時(shí)被發(fā)送或者接近同時(shí)被發(fā)送(例如,一秒內(nèi)、兩秒內(nèi)等),這能夠指示通知有可能是對應(yīng)的通知。作為另一進(jìn)一步示例,過程100能夠確定是否從相同的來源發(fā)送第一推送通知與第二推送通知,諸如從相同的實(shí)體(例如,第一和第二應(yīng)用的發(fā)布者和/或開發(fā)者)。任何適當(dāng)?shù)募夹g(shù)或者多種技術(shù)能夠被用于確定通知是否來自相同的來源,諸如通過確定發(fā)送通知的實(shí)體的識(shí)別信息的至少一部分是相同或足夠相似的,確定包括在第一和第二推送通知中的安全信息是足夠相似或相同的,確定自其發(fā)送通知的網(wǎng)絡(luò)地址或者網(wǎng)絡(luò)地址的一部分是相同或足夠相似的,以及/或者任何其他適當(dāng)?shù)募夹g(shù)。在一些實(shí)施例中,任何其他適當(dāng)?shù)募夹g(shù)和/或前述技術(shù)的組合能夠被用于確定第一推送通知與第二推送通知是否是對應(yīng)的通知。
如果過程100確定第一推送通知與第二推送通知是對應(yīng)的通知(在110處“是”),則過程100能夠繼續(xù)至112。
在112處,過程100能夠基于第一應(yīng)用的身份和第二應(yīng)用的身份而確定第一推送通知與第二推送通知之間的優(yōu)先級(jí)。更特別地,過程100能夠確定是將第一推送通知發(fā)送至用戶設(shè)備還是將第二推送通知發(fā)送至用戶設(shè)備。任何適當(dāng)?shù)募夹g(shù)或者多種技術(shù)能夠被用于確定第一推送通知與第二推送通知之間的優(yōu)先級(jí)。例如,用于發(fā)送第一推送通知的請求和/或用于發(fā)送第二推送通知的請求能夠包括關(guān)于該通知相對于其他相關(guān)應(yīng)用的對應(yīng)通知的優(yōu)先級(jí)的信息。作為另一示例,過程100能夠基于用戶的先前行為(例如,用戶是否更可能使用第一應(yīng)用或第二應(yīng)用)來確定優(yōu)先級(jí)。作為又一示例,用于發(fā)送第一推送通知的請求或者用于發(fā)送第二推送通知的請求能夠包括將該推送通知指定為具有高于其他對應(yīng)的推送通知的優(yōu)先級(jí)的信息或者與該信息相關(guān)聯(lián)。作為還一示例,如果第一推送通知或者第二推送通知已被發(fā)送至用戶設(shè)備,則無論還將對哪一通知給定優(yōu)先級(jí)都能夠?qū)υ撏ㄖo定優(yōu)先級(jí)。在一些情形下,即使應(yīng)用發(fā)布者服務(wù)器或者多個(gè)應(yīng)用發(fā)布至服務(wù)器基本上同時(shí)發(fā)送(例如,在一秒內(nèi)、在兩秒內(nèi)等)第一推送通知和第二推送通知,通知中的一個(gè)也可以被推遲到達(dá)。在該情形下,到達(dá)的第一個(gè)通知能夠被發(fā)送至用戶設(shè)備,而不確定存在對應(yīng)的通知。如果過程100再將到達(dá)的第二個(gè)通知識(shí)別為對應(yīng)的通知,則在兩個(gè)通知均未被發(fā)送的情況下無論將會(huì)確定的第一個(gè)將達(dá)到的通知與第二個(gè)將到達(dá)的通知之間的優(yōu)先級(jí)如何,過程100都能夠阻止第二個(gè)到達(dá)的通知被發(fā)送至用戶設(shè)備。
在114處,過程100能夠基于在112處所確定的優(yōu)先級(jí)而使得第一通知或者第二通知被發(fā)送至用戶設(shè)備。任何適當(dāng)?shù)募夹g(shù)或者多種技術(shù)能夠被用于發(fā)送推送通知。例如,推送通知服務(wù)器能夠試圖將基于優(yōu)先級(jí)所選擇的推送通知發(fā)送至與用戶設(shè)備相關(guān)聯(lián)的特定網(wǎng)絡(luò)地址。作為另一示例,用戶設(shè)備能夠被設(shè)置成偵聽從或向特定網(wǎng)絡(luò)地址和/或特定端口發(fā)送的通知。作為又一示例,對于特定用戶設(shè)備的推送通知能夠被存儲(chǔ)在用戶設(shè)備能夠周期性檢查內(nèi)容的特定位置。作為還一示例,用戶設(shè)備能夠被設(shè)置成周期性從中央服務(wù)器中檢索各種數(shù)據(jù),所述數(shù)據(jù)能夠包括天氣、用戶賬戶更改、通知和/或任何其他適當(dāng)?shù)臄?shù)據(jù)。這樣的用戶設(shè)備的操作系統(tǒng)能夠?qū)τ诟碌臄?shù)據(jù)的一般請求發(fā)送至中央服務(wù)器并且中央服務(wù)器能夠以任何適當(dāng)?shù)母碌臄?shù)據(jù)作出響應(yīng)。在一些實(shí)施例中,過程100能夠阻止在114處沒有發(fā)送的通知被發(fā)送。例如,未發(fā)送的通知能夠被刪除、取消、允許過期等。
在一些實(shí)施例中,過程100可能不具有足夠的信息來確定第一通知與第二通知之間的優(yōu)先級(jí)。例如,在一些實(shí)施例中,如果不清楚關(guān)于第一應(yīng)用和第二應(yīng)用的特定用戶偏好,則過程100可能無法確定優(yōu)先級(jí)。
在一些實(shí)施例中,過程100能夠發(fā)送第一通知和第二通知兩者,并且確定用戶選擇通知中的哪一個(gè)來執(zhí)行與對應(yīng)的第一通知和第二通知相關(guān)聯(lián)的動(dòng)作。例如,兩個(gè)通知都能夠被發(fā)送并且接收通知的用戶設(shè)備能夠回報(bào)用戶選擇了通知中的哪一個(gè)。這能夠被完成任何適當(dāng)?shù)拇螖?shù),并且如果用戶表達(dá)對于第一通知或者第二通知的偏好(例如,通過連續(xù)選擇對應(yīng)于該應(yīng)用的通知),則過程100能夠在例如112處確定優(yōu)先級(jí)的過程中使用該信息。在另一示例中,第一通知、第二通知或者兩個(gè)通知能夠被發(fā)送并且接收一個(gè)通知或者兩個(gè)通知的用戶設(shè)備能夠被指示基于選擇第一通知或者第二通知來向用戶呈現(xiàn)選項(xiàng)。這些選項(xiàng)能夠被呈現(xiàn)給用戶以詢問用戶并且確定是否使用第一應(yīng)用或者第二應(yīng)用來執(zhí)行動(dòng)作(例如,能夠使用第一應(yīng)用或者第二應(yīng)用來執(zhí)行的動(dòng)作,諸如呈現(xiàn)視頻、呈現(xiàn)電子郵件等)。在一些實(shí)施例中,在選擇使用第一應(yīng)用或者第二應(yīng)用來執(zhí)行動(dòng)作后,用戶設(shè)備能夠進(jìn)一步詢問用戶是否使用所選擇的應(yīng)用來始終對類似的通知執(zhí)行所選擇的動(dòng)作。在用戶選擇始終使用所選擇的應(yīng)用來執(zhí)行該動(dòng)作后,用戶設(shè)備能夠回報(bào)所選擇的應(yīng)用的身份作為偏好應(yīng)用。過程100能夠再在例如112處確定優(yōu)先級(jí)的過程中使用該信息。
返回110,如果通知不是對應(yīng)的通知(在110處為“否”),則過程100能夠繼續(xù)至116。在116處,過程100能夠使得第一推送通知和第二推送通知兩者被發(fā)送至用戶設(shè)備。如上所述,能夠使用任何適當(dāng)?shù)募夹g(shù)或多個(gè)技術(shù)的組合來發(fā)送第一推送通知以及第二推送通知。
轉(zhuǎn)至圖2,根據(jù)所公開主題的一些實(shí)施例,示出了用于管理對于安裝于用戶設(shè)備上的多個(gè)應(yīng)用所接收的通知的過程200的示例。在一些實(shí)施例中,過程200能夠由接收推送通知的用戶設(shè)備來執(zhí)行。例如,過程200能夠由從推送通知服務(wù)器接收多個(gè)推送通知的用戶設(shè)備來執(zhí)行,該推送通知服務(wù)器響應(yīng)于從應(yīng)用發(fā)布者服務(wù)器接收到用于將推送通知發(fā)送至安裝于用戶設(shè)備上的應(yīng)用的請求而將推送通知發(fā)送至用戶設(shè)備。
在202處,過程200能夠接收對于安裝于運(yùn)行過程200的用戶設(shè)備上的第一應(yīng)用的第一推送通知。能夠使用任何適當(dāng)?shù)募夹g(shù)或者多種技術(shù)的組合來接收推送通知。例如,如上結(jié)合圖1的114所述,用戶設(shè)備能夠偵聽在特定端口上的通知和/或來自特定網(wǎng)絡(luò)地址的通知。作為另一示例,用戶設(shè)備能夠周期性檢查特定網(wǎng)絡(luò)地址以便呈現(xiàn)推送通知。在一些實(shí)施例中,推送通知能夠識(shí)別推送通知所指向的特定用戶名。例如,一些應(yīng)用能夠允許用戶使用多個(gè)用戶名來登錄應(yīng)用。當(dāng)識(shí)別特定用戶名的推送通知被接收時(shí),過程200能夠確定所識(shí)別的用戶名是否仍登錄到應(yīng)用,并且如果該用戶名沒有登錄到應(yīng)用,則能夠阻止呈現(xiàn)所接收的推送通知(例如,過程200能夠結(jié)束)。
在204處,過程200能夠發(fā)起查詢,以確定是否對于安裝于用戶設(shè)備上的第二應(yīng)用已接收到對應(yīng)的第二推送通知。任何適當(dāng)?shù)募夹g(shù)或者多種技術(shù)能夠被用于發(fā)起查詢,查詢能夠采取任何適當(dāng)?shù)男问?,并且能夠使用任何適當(dāng)?shù)募夹g(shù)來處理查詢。例如,查詢能夠包括檢查被分配為由第一應(yīng)用與第二應(yīng)用共享的存儲(chǔ)器的存儲(chǔ)器區(qū)域。在更特別的示例中,每個(gè)應(yīng)用都能夠被分配用戶設(shè)備的存儲(chǔ)器的特定部分,并且某些應(yīng)用能夠被分配共享存儲(chǔ)器。如果應(yīng)用被編程為請求在其他相關(guān)申請之間共享的存儲(chǔ)器的相關(guān)應(yīng)用,則應(yīng)用能夠被分配共享存儲(chǔ)器。例如,如果應(yīng)用可從來源(例如,相同的發(fā)布者、開發(fā)者等)獲得,則它們能夠相關(guān)。當(dāng)對于已與另一應(yīng)用共享存儲(chǔ)器的應(yīng)用接收到推送通知時(shí),在將推送通知呈現(xiàn)給用戶之前,通知能夠被至少暫時(shí)性地存儲(chǔ)于共享存儲(chǔ)器內(nèi)。當(dāng)在202處接收到第一推送通知時(shí),在204處,過程200能夠檢查用于第一應(yīng)用的共享存儲(chǔ)器,以確定來自第二推送通知的信息是否被存儲(chǔ)在共享存儲(chǔ)器中。在一些實(shí)施例中,第一應(yīng)用和第二應(yīng)用能夠被分配推送通知服務(wù)器上的共享存儲(chǔ)器。在這樣的實(shí)施例中,例如,當(dāng)推送通知服務(wù)器接收到對于第一應(yīng)用的推送通知時(shí),在推送通知服務(wù)器中執(zhí)行的過程能夠檢查共享存儲(chǔ)器以確定來自第二推送通知的信息是否存儲(chǔ)在共享存儲(chǔ)器中。
作為另一示例,所述查詢能夠包括查詢在用戶設(shè)備上運(yùn)行的操作系統(tǒng)以確定是否對于第二應(yīng)用或者其他相關(guān)應(yīng)用接收到對應(yīng)的通知。在該示例中,用戶設(shè)備的操作系統(tǒng)能夠保存所接收的推送通知的記錄以及與這樣的推送通知相關(guān)聯(lián)的信息。當(dāng)接收到第一通知時(shí),所述查詢能夠被發(fā)起以確定是否在不久之后(例如,一秒內(nèi)、兩秒內(nèi)、十秒內(nèi)、一分鐘內(nèi)等)接收到第二推送通知或者在接收到第一通知之前接收到第二推送通知。在這樣的示例中,操作系統(tǒng)能夠在接收到推送通知之后的短時(shí)間內(nèi)等待將接收到的其他推送通知,其他推送通知可以是所接收到的推送通知的對應(yīng)通知。這能夠允許具有較高優(yōu)先級(jí)的對于第一應(yīng)用的推送通知被呈現(xiàn)給用戶,即使其是在具有較低優(yōu)先級(jí)的對于第二應(yīng)用的對應(yīng)推送通知的不久之后才被接收到的。
作為又一示例,所述查詢能夠包括直接查詢第二應(yīng)用以確定是否對于第二應(yīng)用接收到通知。任何適當(dāng)?shù)募夹g(shù)或者多種技術(shù)能夠被用于查詢第二應(yīng)用。作為還一示例,所述查詢能夠包括檢查包括在第一推送通知內(nèi)或者與其相關(guān)聯(lián)的信息,以確定第一推送通知是否與第二應(yīng)用相關(guān),以及所述查詢能夠包括查詢操作系統(tǒng)以確定第二應(yīng)用是否被安裝于用戶設(shè)備上。如果第一推送通知與第二應(yīng)用相關(guān),并且第二應(yīng)用被安裝于設(shè)備上,則過程200能夠確定通知是否對于第二應(yīng)用接收到通知。
在一些實(shí)施例中,任何適當(dāng)?shù)募夹g(shù)或者多種技術(shù)能夠被用于確定第一推送通知與第二推送通知是否是對應(yīng)的通知。例如,上文結(jié)合圖1的110所述的技術(shù)或者多種技術(shù)的組合能夠被用于確定第一推送通知與第二推送通知是否是對應(yīng)的通知。
如果對于第二應(yīng)用沒有接收到對應(yīng)的通知(在206處為“否”),則過程200能夠繼續(xù)至216,在此能夠由用戶設(shè)備呈現(xiàn)第一推送通知。否則,如果對于第二應(yīng)用已接收到對應(yīng)的通知(在206處為“是”),則過程200能夠繼續(xù)至208。
在208處,過程200能夠確定第二個(gè)對應(yīng)的推送通知是否已被呈現(xiàn)給用戶。任何適當(dāng)?shù)募夹g(shù)或者多種技術(shù)能夠被用于確定第二個(gè)對應(yīng)的推送通知是否已被呈現(xiàn)。例如,能夠保存通知已被呈現(xiàn)的歷史并且能夠查詢該歷史以確定第二推送通知是否已被呈現(xiàn)。作為另一示例,第二應(yīng)用能夠?qū)δ軌虮徊樵円源_定第二通知是否已被呈現(xiàn)的已呈現(xiàn)的通知保持記錄。作為又一示例,如果第二通知已被呈現(xiàn)給用戶,但第二通知尚未被用戶確認(rèn)(例如,第二通知尚未被選擇或者清除),則第二通知能夠被認(rèn)為是尚未被呈現(xiàn)給用戶。作為還一示例,能夠由服務(wù)器(例如,推送通知服務(wù)器和/或任何其他適當(dāng)?shù)姆?wù)器)保存已呈現(xiàn)的通知的記錄,該服務(wù)器能夠保存哪些通知已跨多個(gè)用戶設(shè)備(例如,用戶的智能電話和平板計(jì)算機(jī))和/或多個(gè)服務(wù)(例如,如果推送通知中的信息也被發(fā)送至與用戶相關(guān)聯(lián)的電子郵件地址)以及跨安裝于相同設(shè)備上的多個(gè)應(yīng)用而被呈現(xiàn)的記錄。在這樣的示例中,過程200能夠在呈現(xiàn)第一推送通知之前查詢服務(wù)器,以確定第二推送通知是否通過安裝于另一設(shè)備上的應(yīng)用、通過另一服務(wù)和/或通過安裝于執(zhí)行過程200的設(shè)備上的另一應(yīng)用而被呈現(xiàn)給用戶。如果第二個(gè)對應(yīng)的推送通知已被呈現(xiàn)(在208處為“是”),則過程200能夠繼續(xù)至214,在此過程200能夠結(jié)束。否則,如果第二個(gè)對應(yīng)的推送通知尚未被呈現(xiàn)(在208處為“否”),則過程200能夠繼續(xù)至210。
在210處,過程200能夠確定第一應(yīng)用是否具有高于第二應(yīng)用的優(yōu)先級(jí)。任何適當(dāng)?shù)募夹g(shù)或者多種技術(shù)的組合能夠被用于確定第一應(yīng)用是否具有高于第二應(yīng)用的優(yōu)先級(jí)。例如,上文結(jié)合圖1的112所述的技術(shù)能夠被用于確定第一應(yīng)用是否具有高于第二應(yīng)用的優(yōu)先級(jí)。作為另一示例,第一應(yīng)用和第二應(yīng)用中的一個(gè)應(yīng)用能夠被設(shè)定為主應(yīng)用并且另一個(gè)應(yīng)用能夠被設(shè)定為從應(yīng)用。當(dāng)對于主應(yīng)用以及從應(yīng)用接收到對應(yīng)的推送通知時(shí),能夠由主應(yīng)用決定優(yōu)先級(jí)。作為又一示例,能夠基于第一應(yīng)用是否是更受限制的應(yīng)用(例如,允許用戶訪問內(nèi)容的較小子集,而不是第二應(yīng)用允許用戶訪問的內(nèi)容)來確定優(yōu)先級(jí)。在該示例中,更受限制的應(yīng)用在一些實(shí)施例中能夠被給定優(yōu)先級(jí)。
如果第一應(yīng)用不具有高于第二應(yīng)用的優(yōu)先級(jí)(在212處為“否”),則過程200能夠繼續(xù)至214,在此過程200能夠結(jié)束。否則,如果第一應(yīng)用確實(shí)具有高于第二應(yīng)用的優(yōu)先級(jí)(在212處為“是”),則過程200能夠繼續(xù)至216。
在216處,過程200能夠使得用戶設(shè)備呈現(xiàn)第一通知,并且能夠阻止第二通知被呈現(xiàn)給用戶。在一些實(shí)施例中,如果第二通知已被呈現(xiàn)但尚未被用戶確認(rèn),則第二通知能夠被刪除或以其他方式不再對用戶可獲得,并且替代地第一通知能夠被呈現(xiàn)。任何適當(dāng)?shù)募夹g(shù)能夠被用于呈現(xiàn)通知。例如,任何適當(dāng)?shù)母袷降耐ㄖ軌蛟谟脩粼O(shè)備的顯示器上被呈現(xiàn)給用戶。作為另一示例,能夠播放向用戶指示通知已被接收的特定聲音。在一些實(shí)施例中,不同的聲音能夠被用于對不同應(yīng)用的通知。作為又一示例,指示通知已被接收的指示符能夠被呈現(xiàn)給用戶。該指示符能夠指示對于特定應(yīng)用已接收到通知,和/或通常指示對于安裝于用戶設(shè)備上的應(yīng)用已接收到通知。在一些實(shí)施例中,指示符能夠是當(dāng)通知已被接收時(shí)和或當(dāng)通知處于待定并且尚未被用戶查看時(shí)閃爍的燈光。此外,在一些實(shí)施例中,用于呈現(xiàn)推送通知的一種技術(shù)或者多種技術(shù)能夠基于接收推送通知的用戶設(shè)備的設(shè)置。例如,通知被呈現(xiàn)給用戶的方式能夠基于可由用戶調(diào)節(jié)的設(shè)置。
盡管本文所述的示例大體上是通過參考兩個(gè)通知來描述的,但本文所述的機(jī)制能夠被擴(kuò)展到應(yīng)用于任何適當(dāng)?shù)臄?shù)目的對應(yīng)通知。
圖3示出了響應(yīng)于接收到推送通知能夠由移動(dòng)設(shè)備300呈現(xiàn)的通知的各種示例。如圖3所示,移動(dòng)設(shè)備300能夠使用顯示器302來呈現(xiàn)一個(gè)通知或多個(gè)通知。在一些實(shí)施例中,顯示器302能夠是觸摸屏顯示器,該觸摸屏顯示器能夠被用于從用戶接收輸入并且作為顯示器將信息呈現(xiàn)給用戶。能夠通過各種方式來呈現(xiàn)通知和/或通知已被接收的指示。例如,在一些實(shí)施例中,通知能夠被顯示為橫跨顯示器302的上部的橫幅304。應(yīng)指出,在該示例中,雖然橫跨顯示器302的上部來呈現(xiàn)橫幅,但能夠沿著顯示器的任何適當(dāng)?shù)倪吘墎沓尸F(xiàn)橫幅304。此外,呈現(xiàn)橫幅304的顯示器的邊緣能夠基于移動(dòng)設(shè)備300的取向。在一些實(shí)施例中,能夠沿著顯示器302的邊緣的一部分而不是沿著顯示器302的整個(gè)邊緣來呈現(xiàn)橫幅304。
在一些實(shí)施例中,橫幅304能夠包括圖標(biāo)306,該圖標(biāo)306能夠是與推送通知相關(guān)聯(lián)的應(yīng)用的圖標(biāo)。例如,如果使得橫幅304被顯示的推送通知是對于應(yīng)用A而被發(fā)送的,則圖標(biāo)306能夠是與應(yīng)用A相關(guān)聯(lián)的圖標(biāo)。在一些實(shí)施例中,橫幅304也能夠包括推送通知內(nèi)容308。推送通知內(nèi)容308能夠包括與推送通知一起被發(fā)送的任何適當(dāng)?shù)膬?nèi)容。例如,推送通知內(nèi)容能夠包括文本、圖像、視頻、超鏈接和/或任何其他適當(dāng)?shù)膬?nèi)容。
在一些實(shí)施例中,通知能夠被呈現(xiàn)為在顯示器302的中央部分中的彈出消息310。彈出消息310能夠包括圖標(biāo)306和內(nèi)容308。在一些實(shí)施例中,彈出消息310也能夠包括用戶界面元素312和314,以使得對應(yīng)于消息的應(yīng)用打開和執(zhí)行特定動(dòng)作。例如,如果使得彈出消息310被呈現(xiàn)的通知是關(guān)于可通過應(yīng)用A獲得的視頻,則選擇用戶界面元素312能夠使得應(yīng)用A被打開并且能夠使得視頻被播放,而選擇用戶界面元素314能夠撤銷彈出消息310。
在一些實(shí)施例中,能夠通過呈現(xiàn)與應(yīng)用的圖標(biāo)306聯(lián)合呈現(xiàn)的標(biāo)記316來指示對于特定應(yīng)用接收到通知的事實(shí)。標(biāo)記316能夠指示通知已被接收,并且在一些實(shí)施例中也能夠指示已接收到但用戶尚未采取動(dòng)作的通知的數(shù)目(例如,通過選擇所接收的通知或者清除它們)。
盡管在圖3中示出若干示例,但這些示例僅為說明性的并且可以使用許多其他技術(shù)來呈現(xiàn)通知。應(yīng)指出,特定用戶設(shè)備能夠響應(yīng)于接收到推送通知而僅呈現(xiàn)單個(gè)通知,并且可以不同時(shí)呈現(xiàn)不同風(fēng)格的通知呈現(xiàn)方式。在一些實(shí)施例中,任何其他適當(dāng)?shù)募夹g(shù)能夠被用于呈現(xiàn)通知。例如,呈現(xiàn)近期接收的通知的至少一部分的通知中心能夠響應(yīng)于用戶動(dòng)作而由用戶設(shè)備來呈現(xiàn)。作為另一示例,如果用戶在與相同的用戶相關(guān)聯(lián)的不同用戶設(shè)備上確認(rèn)相同的通知,則已被呈現(xiàn)給用戶的多個(gè)通知能夠被自動(dòng)刪除和/或清除。
如上文結(jié)合圖2的216所述,在一些實(shí)施例中,移動(dòng)設(shè)備300的設(shè)置能夠控制如何呈現(xiàn)推送通知。例如,所述設(shè)置能夠被用于確定是否將通知呈現(xiàn)為橫幅304、彈出消息310還是標(biāo)記316。此外,在一些實(shí)施例中,設(shè)置能夠?qū)τ诓煌膽?yīng)用而不同,以便對于第一應(yīng)用呈現(xiàn)橫幅304,但對于第二應(yīng)用僅呈現(xiàn)標(biāo)記316。在一些實(shí)施例中,移動(dòng)設(shè)備300的這樣的設(shè)置能夠被用于例如在圖2的210處確定優(yōu)先級(jí)。
圖4示出了根據(jù)一些實(shí)施例的在其上能夠?qū)崿F(xiàn)如本文所述的用于管理指向安裝于用戶設(shè)備上的多個(gè)應(yīng)用的通知的機(jī)制的系統(tǒng)的概括性示意圖的示例400。如所示,系統(tǒng)400能夠包括一個(gè)或多個(gè)移動(dòng)設(shè)備300。移動(dòng)設(shè)備300能夠是相互間位于本地或者相互間位于遠(yuǎn)程。移動(dòng)設(shè)備300能夠通過一個(gè)或多個(gè)通信鏈路404被連接至通信網(wǎng)絡(luò)402,該通信網(wǎng)絡(luò)402能夠經(jīng)由通信鏈路406被鏈接至一個(gè)或多個(gè)推送通知服務(wù)器410,并且移動(dòng)設(shè)備300和/或推送通知服務(wù)器410能夠經(jīng)由通信鏈路412被鏈接至一個(gè)或多個(gè)應(yīng)用發(fā)布者服務(wù)器420。
在一些實(shí)施例中,移動(dòng)設(shè)備300、推送通知服務(wù)器410以及應(yīng)用發(fā)布者服務(wù)器420中的每一個(gè)都能夠是諸如計(jì)算機(jī)的通用設(shè)備或者諸如客戶端、服務(wù)器等的專用設(shè)備中的任何一個(gè)設(shè)備。這些通用或?qū)S迷O(shè)備中的任何一個(gè)設(shè)備都能夠包括任何適當(dāng)?shù)慕M件,諸如硬件處理器(其能夠是微處理器、數(shù)字信號(hào)處理器、控制器等)、存儲(chǔ)器、通信接口、顯示器控制器、輸入設(shè)備等。例如,移動(dòng)設(shè)備300能夠被實(shí)現(xiàn)為智能電話或者其他蜂窩電話、平板計(jì)算機(jī)、可穿戴式計(jì)算機(jī)、個(gè)人數(shù)字助理、便攜式音樂播放器、便攜式視頻播放器、手持式游戲機(jī)或者任何其他適當(dāng)?shù)囊苿?dòng)設(shè)備。此外,盡管移動(dòng)設(shè)備300被描述為移動(dòng)計(jì)算設(shè)備,但本文所述的機(jī)制也能夠與任何適當(dāng)?shù)挠?jì)算設(shè)備一起使用,計(jì)算設(shè)備諸如為膝上型計(jì)算機(jī)、桌面型計(jì)算機(jī)、機(jī)頂盒、游戲機(jī)、數(shù)字媒體接收器或者任何其他適當(dāng)?shù)挠?jì)算設(shè)備。
通信網(wǎng)絡(luò)402能夠是任何適當(dāng)?shù)挠?jì)算機(jī)網(wǎng)絡(luò)或者這樣的網(wǎng)絡(luò)的組合,包括互聯(lián)網(wǎng)、內(nèi)聯(lián)網(wǎng)、廣域網(wǎng)(WAN)、局域網(wǎng)(LAN)、無線網(wǎng)、數(shù)字用戶線路(DSL)網(wǎng)絡(luò)、幀中繼網(wǎng)絡(luò)、異步傳輸模式(ATM)網(wǎng)絡(luò)、虛擬專用網(wǎng)絡(luò)(VPN)等。通信鏈路404、406和412能夠是適用于在移動(dòng)設(shè)備300、推送通知服務(wù)器410與應(yīng)用發(fā)布者服務(wù)器420之間通信數(shù)據(jù)的任何通信鏈路,諸如網(wǎng)絡(luò)鏈路、撥號(hào)鏈路、無線鏈路、硬連線鏈路、光鏈路、紅外鏈路、任何其他適當(dāng)?shù)耐ㄐ沛溌坊蛘哌@樣的鏈路的任何適當(dāng)?shù)慕M合。
系統(tǒng)400能夠包括一個(gè)或多個(gè)推送通知服務(wù)器410,所述推送通知服務(wù)器410能夠識(shí)別其上安裝了應(yīng)用的特定實(shí)例的移動(dòng)設(shè)備300,該應(yīng)用的特定實(shí)例對應(yīng)于由應(yīng)用發(fā)布者服務(wù)器420發(fā)送的特定通知,所述推送通知服務(wù)器410能夠發(fā)送對于安裝于特定移動(dòng)設(shè)備300上的應(yīng)用的特定實(shí)例的推送通知,能夠確定對于安裝于特定移動(dòng)設(shè)備300上的不同應(yīng)用的實(shí)例從多個(gè)對應(yīng)的通知當(dāng)中發(fā)送哪一個(gè)通知,能夠執(zhí)行任何其他適當(dāng)?shù)墓δ埽蛘邎?zhí)行這些功能的任何適當(dāng)?shù)慕M合。
系統(tǒng)400能夠包括一個(gè)或多個(gè)應(yīng)用發(fā)布者服務(wù)器420,所述應(yīng)用發(fā)布者服務(wù)器420能夠?qū)τ趹?yīng)用的特定實(shí)例發(fā)送推送通知。應(yīng)用發(fā)布者服務(wù)器420能夠?qū)⑦@些推送通知與識(shí)別通知所指向的應(yīng)用的一個(gè)特定實(shí)例或多個(gè)特定實(shí)例的信息一起發(fā)送至推送通知服務(wù)器410。該識(shí)別信息能夠基于存儲(chǔ)在應(yīng)用發(fā)布者服務(wù)器410或者存儲(chǔ)在推送通知服務(wù)器420的信息。應(yīng)用發(fā)布者服務(wù)器420也能夠執(zhí)行任何其他適當(dāng)?shù)墓δ埽T如格式化通知、調(diào)度通知等。
圖5圖示了根據(jù)所公開主題的一些實(shí)施例的能夠被用于實(shí)現(xiàn)在圖4中所描繪的移動(dòng)設(shè)備300、推送通知服務(wù)器410以及應(yīng)用發(fā)布服務(wù)器420中的一個(gè)的硬件的示例500。參照圖5,移動(dòng)設(shè)備300能夠包括能夠互相連接的顯示器/輸入設(shè)備502、硬件處理器504、存儲(chǔ)器506以及發(fā)送器/接收器508。在一些實(shí)施例中,存儲(chǔ)器506能夠包括用于存儲(chǔ)用于控制硬件處理器502的計(jì)算機(jī)程序的存儲(chǔ)設(shè)備(諸如非瞬時(shí)計(jì)算機(jī)可讀介質(zhì))。
硬件處理器504能夠使用計(jì)算機(jī)程序以在顯示器/輸入設(shè)備502上呈現(xiàn)用戶界面,所述用戶界面用于向用戶呈現(xiàn)諸如從推送通知服務(wù)器410和/或應(yīng)用發(fā)布者服務(wù)器420所接收的通知的各種視覺信息以及任何其他適當(dāng)?shù)囊曈X信息,諸如用于安裝于移動(dòng)設(shè)備300上的各種應(yīng)用的用戶界面,安裝于移動(dòng)設(shè)備300上的操作系統(tǒng)的用戶界面。還應(yīng)指出,能夠從任何適當(dāng)?shù)膩碓磥斫邮胀ㄟ^通信鏈路404或者任何其他通信鏈路所接收到的數(shù)據(jù)。在一些實(shí)施例中,硬件處理器404能夠例如使用發(fā)送器、接收器、發(fā)送器/接收器、收發(fā)器或者任何其他適當(dāng)?shù)耐ㄐ旁O(shè)備,諸如發(fā)送器/收發(fā)器508,通過通信鏈路404或者任何其他通信鏈路來發(fā)送和接收數(shù)據(jù)。顯示器/輸入設(shè)備502能夠包括觸摸屏(例如,觸摸屏302)、平板顯示器、投影儀、陰極射線管顯示器、視頻輸出端口、揚(yáng)聲器和/或任何其他適當(dāng)?shù)娘@示器和/或呈現(xiàn)設(shè)備,并且能夠進(jìn)一步包括計(jì)算機(jī)鍵盤、計(jì)算機(jī)鼠標(biāo)、麥克風(fēng)、觸摸板、語音識(shí)別電路、觸摸屏的觸摸界面和/或任何其他適當(dāng)?shù)妮斎朐O(shè)備。發(fā)送器/接收器508能夠包括用于傳送和/或接收尤其是從推送通知服務(wù)器410和/或應(yīng)用發(fā)布服務(wù)器420所發(fā)送的推送通知的任何適當(dāng)?shù)陌l(fā)送器和/或接收器。
推送通知服務(wù)器410能夠包括能夠互相連接的顯示器/輸入設(shè)備512、硬件處理器514、存儲(chǔ)器516以及發(fā)送器/接收器518。在一些實(shí)施例中,存儲(chǔ)器516能夠包括用于存儲(chǔ)用于控制硬件處理器514的服務(wù)器程序的存儲(chǔ)設(shè)備(諸如非瞬時(shí)計(jì)算機(jī)可讀介質(zhì))。
硬件處理器514能夠使用服務(wù)器程序來與移動(dòng)設(shè)備300進(jìn)行通信以根據(jù)本文所述的機(jī)制提供推送通知,與應(yīng)用發(fā)布者服務(wù)器420進(jìn)行通信以接收推送通知,以及執(zhí)行任何其他適當(dāng)?shù)墓δ堋_€應(yīng)指出,能夠從任何適當(dāng)?shù)膩碓磥斫邮胀ㄟ^通信鏈路406或者任何其他通信鏈路所接收到的數(shù)據(jù)。在一些實(shí)施例中,硬件處理器514能夠例如使用發(fā)送器、接收器、發(fā)送器/接收器、收發(fā)器或者任何其他適當(dāng)?shù)耐ㄐ旁O(shè)備,諸如發(fā)送器/收發(fā)器518,通過通信鏈路406或者任何其他通信鏈路來發(fā)送和接收數(shù)據(jù)。顯示器/輸入設(shè)備512能夠包括觸摸屏、平板顯示器、投影儀、陰極射線管顯示器、視頻輸出端口、揚(yáng)聲器和/或任何其他適當(dāng)?shù)娘@示器和/或呈現(xiàn)設(shè)備,并且能夠進(jìn)一步包括計(jì)算機(jī)鍵盤、計(jì)算機(jī)鼠標(biāo)、麥克風(fēng)、觸摸板、語音識(shí)別電路、觸摸屏的觸摸界面和/或任何其他適當(dāng)?shù)妮斎朐O(shè)備。發(fā)送器/接收器518能夠包括用于發(fā)送和/或接收尤其是到移動(dòng)設(shè)備300的推送通知、來自移動(dòng)設(shè)備300的狀態(tài)信息等的任何適當(dāng)?shù)陌l(fā)送器和/或接收器。
應(yīng)用發(fā)布者服務(wù)器420能夠包括能夠互相連接的顯示器/輸入設(shè)備522、硬件處理器524、存儲(chǔ)器526以及發(fā)送器/接收器528。在一些實(shí)施例中,存儲(chǔ)器526能夠包括用于存儲(chǔ)用于控制硬件處理器524的服務(wù)器程序的存儲(chǔ)設(shè)備(諸如非瞬時(shí)計(jì)算機(jī)可讀介質(zhì))。
硬件處理器524能夠使用服務(wù)器程序來與推送通知服務(wù)器410和/或移動(dòng)設(shè)備300進(jìn)行通信,以根據(jù)本文所述的機(jī)制提供推送通知,格式化和/或調(diào)度待被發(fā)送至與特定應(yīng)用發(fā)布者服務(wù)器420相關(guān)聯(lián)的應(yīng)用的特定實(shí)例的推送通知,與推送通知服務(wù)器410和/或移動(dòng)設(shè)備300進(jìn)行通信以建立應(yīng)用的特定實(shí)例的身份和/或?qū)?yīng)用的特定實(shí)例設(shè)定成接收推送通知,以及執(zhí)行任何其他適當(dāng)?shù)墓δ堋_€應(yīng)指出,能夠從任何適當(dāng)?shù)膩碓磥斫邮胀ㄟ^通信鏈路412或者任何其他通信鏈路所接收的數(shù)據(jù)。在一些實(shí)施例中,硬件處理器524能夠例如使用發(fā)送器、接收器、發(fā)送器/接收器、收發(fā)器或者任何其他適當(dāng)?shù)耐ㄐ旁O(shè)備,諸如發(fā)送器/收發(fā)器528,通過通信鏈路412或者任何其他通信鏈路來發(fā)送和接收數(shù)據(jù)。顯示器/輸入設(shè)備522能夠包括觸摸屏、平板顯示器、投影儀、陰極射線管顯示器、視頻輸出端口、揚(yáng)聲器和/或任何其他適當(dāng)?shù)娘@示器和/或呈現(xiàn)設(shè)備,并且能夠進(jìn)一步包括計(jì)算機(jī)鍵盤、計(jì)算機(jī)鼠標(biāo)、麥克風(fēng)、觸摸板、語音識(shí)別電路、觸摸屏的觸摸界面和/或任何其他適當(dāng)?shù)妮斎朐O(shè)備。發(fā)送器/接收器528能夠包括用于發(fā)送和/或接收尤其是到推送通知服務(wù)器和/或移動(dòng)設(shè)備300的推送通知、移動(dòng)設(shè)備300的狀態(tài)信息(例如,基于安裝了應(yīng)用的特定實(shí)例)等的任何適當(dāng)?shù)陌l(fā)送器和/或接收器。
轉(zhuǎn)至圖6,根據(jù)所公開主題的一些實(shí)施例,示出了應(yīng)用發(fā)布者服務(wù)器420、推送通知服務(wù)器410與移動(dòng)設(shè)備300之間的說明性流程600的示例。在602處,應(yīng)用發(fā)布者服務(wù)器420能夠提交用于發(fā)送指向第一應(yīng)用的一個(gè)特定實(shí)例或多個(gè)特定實(shí)例的第一推送通知的請求。該請求能夠指向推送通知服務(wù)器410,并且能夠使用任何適當(dāng)?shù)募夹g(shù)或多種技術(shù)而被發(fā)送。在一些實(shí)施例中,所述請求能夠與對應(yīng)于推送通知所指向的第一應(yīng)用的一個(gè)特定實(shí)例或多個(gè)特定實(shí)例的識(shí)別信息一起被發(fā)送。任何適當(dāng)?shù)男畔⒛軌虮挥糜谧R(shí)別第一應(yīng)用的特定實(shí)例或多個(gè)特定實(shí)例,諸如結(jié)合圖1的106所述的信息。在602處發(fā)送的請求也能夠包括待被發(fā)送至第一應(yīng)用的特定實(shí)例或多個(gè)特定實(shí)例的推送通知的內(nèi)容。
在604處,應(yīng)用發(fā)布者服務(wù)器420能夠提交用于發(fā)送指向第二應(yīng)用的第二推送通知的請求。如上文結(jié)合602所討論,第二請求類似于第一請求,能夠指向第二應(yīng)用的一個(gè)特定實(shí)例或多個(gè)特定實(shí)例。在一些實(shí)施例中,在604處提交的請求能夠使用與在602處提交的請求類似的技術(shù)而被發(fā)送,并且能夠包括類似類型的信息,諸如識(shí)別了第二應(yīng)用的一個(gè)特定實(shí)例或多個(gè)特定實(shí)例的信息。應(yīng)指出,盡管第二請求被示為源自與第一請求相同的應(yīng)用發(fā)布者服務(wù)器420,但這僅出于方便考慮并且第一請求和第二請求能夠源自分離的應(yīng)用發(fā)布者服務(wù)器420。
在606處,推送通知服務(wù)器410能夠從應(yīng)用發(fā)布者服務(wù)器420接收用于發(fā)送第一推送通知的請求。任何適當(dāng)?shù)募夹g(shù)或多種技術(shù)能夠被用于接收用于發(fā)送第一通知的第一請求,諸如上文結(jié)合圖1的106所述的技術(shù)。
在608處,推送通知服務(wù)器410能夠識(shí)別與第一推送通知所指向的第一應(yīng)用的特定實(shí)例或多個(gè)特定實(shí)例相關(guān)聯(lián)的一個(gè)移動(dòng)設(shè)備或多個(gè)移動(dòng)設(shè)備。任何適當(dāng)?shù)募夹g(shù)或多種技術(shù)能夠被用于確定第一推送通知所指向的移動(dòng)設(shè)備的身份,諸如上文結(jié)合圖1的106所述的技術(shù)。
在610處,推送通知服務(wù)器410能夠從應(yīng)用發(fā)布者服務(wù)器420接收用于發(fā)送第二推送通知的請求。如上文結(jié)合606所述,任何適當(dāng)?shù)募夹g(shù)或多種技術(shù)能夠被用于接收用于發(fā)送第一通知的第二請求。
在612處,推送通知服務(wù)器410能夠識(shí)別與第二推送通知所指向的第二應(yīng)用的特定實(shí)例相關(guān)聯(lián)的一個(gè)移動(dòng)設(shè)備或多個(gè)移動(dòng)設(shè)備。如上文結(jié)合608所述,任何適當(dāng)?shù)募夹g(shù)或多種技術(shù)能夠被用于確定第二推送通知所指向的移動(dòng)設(shè)備的身份。
在614處,推送通知服務(wù)器410能夠確定在608處所識(shí)別的移動(dòng)設(shè)備是否是在612處所識(shí)別的相同的移動(dòng)設(shè)備,并且能夠確定第一推送通知是否對應(yīng)于第二推送通知(例如,如上結(jié)合圖1的110所描述的)。推送通知服務(wù)器410能夠使用任何適當(dāng)?shù)募夹g(shù)或多種技術(shù)來確定第一推送通知與第二推送通知是否是對應(yīng)的通知。例如,以上結(jié)合圖1的110所述的技術(shù)或其任何組合能夠被用于確定第一通知與第二通知是否是對應(yīng)的通知。
如果在608和612處所識(shí)別的移動(dòng)設(shè)備是相同的移動(dòng)設(shè)備,并且如果在606處所接收到的第一推送通知與在610處所接收到的第二推送通知是對應(yīng)的通知(在614處為“是”),則推送通知服務(wù)器410能夠繼續(xù)至616。
在616處,推送通知服務(wù)器410能夠確定第一應(yīng)用或第二應(yīng)用是否具有對于發(fā)出第一通知或第二通知的優(yōu)先級(jí)。推送通知服務(wù)器410能夠使用任何適當(dāng)?shù)募夹g(shù)或多種技術(shù)來確定第一應(yīng)用和第二應(yīng)用的優(yōu)先級(jí)。例如,以上結(jié)合圖1的112所述的多種技術(shù)中的任何一個(gè)或其任何組合能夠被用于確定第一應(yīng)用和第二應(yīng)用的優(yōu)先級(jí)。
在618處,推送通知服務(wù)器410能夠基于在616處所確定的優(yōu)先級(jí)而選擇將第一推送通知或者第二推送通知發(fā)送至在608和612處所識(shí)別的移動(dòng)設(shè)備。請注意,選擇將發(fā)送哪一個(gè)推送通知能夠被作為默認(rèn)選擇,并且可以不是對特定推送通知的正向選擇。更特別地,推送通知服務(wù)器410能夠發(fā)送全部接收到的通知,除非諸如過程100的過程導(dǎo)致了阻止特定推送通知被發(fā)送。
返回614,如果在608和612處所識(shí)別的移動(dòng)設(shè)備不相同,或者如果在606處所接收到的第一推送通知與在610處所接收到的第二推送通知不是對應(yīng)的通知(在614處為“否”),則推送通知服務(wù)器410能夠繼續(xù)至620。
在620處,推送通知服務(wù)器410能夠選擇將第一推送通知以及第二推送通知發(fā)送至在608和612處所識(shí)別的移動(dòng)設(shè)備或多個(gè)移動(dòng)設(shè)備。
在622處,推送通知服務(wù)器410能夠使得在618或620處所選擇的推送通知或多個(gè)推送通知被發(fā)送至在608和612處所識(shí)別的移動(dòng)設(shè)備或多個(gè)移動(dòng)設(shè)備。任何適當(dāng)?shù)募夹g(shù)或多種技術(shù)能夠被用于在622處發(fā)送推送通知或多個(gè)推送通知,諸如結(jié)合圖1的114所述的技術(shù)。
在624處,移動(dòng)設(shè)備300能夠從推送通知服務(wù)器410接收一個(gè)或多個(gè)推送通知。所接收的一個(gè)或多個(gè)推送通知能夠是在622處所發(fā)送的推送通知或多個(gè)推送通知。請注意,盡管示出了單個(gè)移動(dòng)設(shè)備300,如上結(jié)合614和620所述,第一推送通知和第二推送通知可以不指向相同的移動(dòng)設(shè)備。在該情形下,推送通知能夠被發(fā)送至不同的移動(dòng)設(shè)備300。
在626處,移動(dòng)設(shè)備300能夠使得在624處所接收的推送通知或多個(gè)推送通知被呈現(xiàn)(例如,使用移動(dòng)設(shè)備300的顯示器)。如上結(jié)合圖2的216以及結(jié)合圖3所述,通知或多個(gè)通知的呈現(xiàn)能夠基于正在呈現(xiàn)通知的特定移動(dòng)設(shè)備300的設(shè)置。
圖7示出了根據(jù)所公開主題的一些實(shí)施例的推送通知服務(wù)器410與移動(dòng)設(shè)備300之間的說明性流程圖700的示例。在702處,推送通知服務(wù)器410能夠接收用于將推送通知發(fā)送至第一應(yīng)用的特定實(shí)例的第一請求。如上所述,能夠從請求將第一推送通知發(fā)送至已安裝第一應(yīng)用的一個(gè)特定實(shí)例或多個(gè)特定實(shí)例的一個(gè)移動(dòng)設(shè)備300或多個(gè)移動(dòng)設(shè)備300的應(yīng)用發(fā)布者服務(wù)器420來接收在702處所接收到的第一請求。如上所述,任何適當(dāng)?shù)募夹g(shù)或多種技術(shù)能夠被用于接收第一推送通知,諸如上文結(jié)合圖1的106所述的技術(shù)。
在704處,推送通知服務(wù)器410能夠識(shí)別與第一應(yīng)用的特定實(shí)例或多個(gè)特定實(shí)例相關(guān)聯(lián)的一個(gè)移動(dòng)設(shè)備300或多個(gè)移動(dòng)設(shè)備300。任何適當(dāng)?shù)募夹g(shù)或多種技術(shù)能夠被用于識(shí)別與第一應(yīng)用的特定實(shí)例相關(guān)聯(lián)的移動(dòng)設(shè)備300,諸如上文結(jié)合圖1的106所述的技術(shù)。
在706處,推送通知服務(wù)器410能夠?qū)⒌谝煌扑屯ㄖl(fā)送至在704處所識(shí)別的移動(dòng)設(shè)備。如上結(jié)合例如圖1的114所述,任何適當(dāng)?shù)募夹g(shù)或多個(gè)技術(shù)能夠被用于將第一推送通知發(fā)送至在704處所識(shí)別的移動(dòng)設(shè)備。
在708處,推送通知服務(wù)器410能夠接收用于將推送通知發(fā)送至第二應(yīng)用的一個(gè)特定實(shí)例或多個(gè)特定實(shí)例的第二請求。如上所述,能夠從請求將第二推送通知發(fā)送至已安裝第二應(yīng)用的一個(gè)特定實(shí)例或多個(gè)特定實(shí)例的一個(gè)移動(dòng)設(shè)備300或多個(gè)移動(dòng)設(shè)備300的應(yīng)用發(fā)布者服務(wù)器420來接收在708處所接收到的第二請求。還如上結(jié)合圖1的106所述,任何適當(dāng)?shù)募夹g(shù)或多種技術(shù)能夠被用于接收第二推送通知。
在710處,推送通知服務(wù)器410能夠識(shí)別與第二應(yīng)用的特定實(shí)例或多個(gè)特定實(shí)例相關(guān)聯(lián)的一個(gè)移動(dòng)設(shè)備或多個(gè)移動(dòng)設(shè)備。如上結(jié)合例如706和圖1的106所述,任何適當(dāng)?shù)募夹g(shù)或多個(gè)技術(shù)能夠被用于識(shí)別與第二應(yīng)用的特定實(shí)例相關(guān)聯(lián)的移動(dòng)設(shè)備300。
在712處,推送通知服務(wù)器410能夠?qū)⒌诙扑屯ㄖl(fā)送至在710處所識(shí)別的移動(dòng)設(shè)備。如上結(jié)合例如圖1的114所述,任何適當(dāng)?shù)募夹g(shù)或多個(gè)技術(shù)能夠被用于將第二推送通知發(fā)送至在710處所識(shí)別的移動(dòng)設(shè)備。
在714處,移動(dòng)設(shè)備300能夠從推送通知服務(wù)器接收第一推送通知。如上結(jié)合例如圖2的202所述,任何適當(dāng)?shù)募夹g(shù)或多種技術(shù)能夠被用于接收第一推送通知。
在716處,移動(dòng)設(shè)備300能夠從推送通知服務(wù)器接收第二推送通知。如上結(jié)合例如圖2的202所述,任何適當(dāng)?shù)募夹g(shù)或多種技術(shù)能夠被用于接收第二推送通知。
在718處,移動(dòng)設(shè)備300能夠確定在714處所接收到的第一推送通知是否對應(yīng)于在716處所接收到的第二推送通知。任何適當(dāng)?shù)募夹g(shù)或多個(gè)技術(shù)能夠被用于確定第一推送通知與第二推送通知是否是對應(yīng)的通知,諸如上文結(jié)合例如圖1的110和圖2的204所述的技術(shù)。
如果在718處第一推送通知被確定成對應(yīng)于第二推送通知(在720處為“是”),則移動(dòng)設(shè)備300能夠繼續(xù)至722。
在722處,移動(dòng)設(shè)備300能夠確定第一推送通知或第二推送通知是否已由移動(dòng)設(shè)備300呈現(xiàn)(例如,被呈現(xiàn)給用戶)。如果第一推送通知或第二推送通知已被呈現(xiàn)給用戶(在722處為“是”),則移動(dòng)設(shè)備300能夠繼續(xù)至724并且結(jié)束流程700。否則,如果第一推送通知或第二推送通知都沒有由移動(dòng)設(shè)備300呈現(xiàn)(在722處為“否”),則移動(dòng)設(shè)備300能夠繼續(xù)至726。
在726處,移動(dòng)設(shè)備300能夠確定第一應(yīng)用與第二應(yīng)用之間的優(yōu)先級(jí),以確定應(yīng)將第一推送通知或第二推送通知呈現(xiàn)給用戶。任何適當(dāng)?shù)募夹g(shù)或多種技術(shù)能夠被用于確定優(yōu)先級(jí),諸如結(jié)合例如圖1的112所述的技術(shù)。
在728處,移動(dòng)設(shè)備300能夠基于第一推送通知和第二推送通知的優(yōu)先級(jí)而選擇將第一推送通知或第二推送通知呈現(xiàn)給用戶。
返回720,如果第一推送通知與第二推送通知不是對應(yīng)的通知(在720處為“否”),則移動(dòng)設(shè)備300能夠繼續(xù)至730。在730處,移動(dòng)設(shè)備300能夠選擇第一推送通知和第二推送通知兩者,以便將其呈現(xiàn)給用戶。附加地或替選地,在確定通知并不對應(yīng)于另一通知之后,移動(dòng)設(shè)備300能夠使得通知被呈現(xiàn)。請注意,選擇將發(fā)出哪一個(gè)推送通知能夠被作為默認(rèn)選擇,并且可以不是對特定推送通知的正向選擇。更特別地,諸如移動(dòng)設(shè)備300的用戶設(shè)備能夠呈現(xiàn)全部接收到的通知,除非諸如過程200的過程導(dǎo)致了阻止特定推送通知被呈現(xiàn)。
在732處,移動(dòng)設(shè)備300能夠使得在728處所選擇的推送通知或多個(gè)推送通知被呈現(xiàn)給移動(dòng)設(shè)備300的用戶。如上結(jié)合例如圖2的216以及結(jié)合圖3所述,任何適當(dāng)?shù)募夹g(shù)或多種技術(shù)能夠被用于將推送通知呈現(xiàn)給用戶。請注意,呈現(xiàn)推送通知不要求了解用戶是否曾實(shí)際查看過所呈現(xiàn)的通知。
在一些實(shí)施例中,本文所述的機(jī)制能夠包括服務(wù)器側(cè)軟件、客戶端側(cè)軟件、服務(wù)器側(cè)硬件、客戶端側(cè)硬件、固件或者其任何適當(dāng)組合。例如,這些機(jī)制能夠涵蓋一個(gè)或多個(gè)Web頁面或Web頁面部分(例如,經(jīng)由任何適當(dāng)?shù)木幋a,諸如超文本標(biāo)記語言(“HTML”)、動(dòng)態(tài)超文本標(biāo)記語言(“DHTML”)、可擴(kuò)展標(biāo)記語言(“XML”)、JavaServer頁面(“JSP”)、動(dòng)態(tài)服務(wù)器頁面(“ASP”)、冷聚變(ColdFusion)或者任何其他適當(dāng)方法)。作為另一示例,這些機(jī)制能夠涵蓋使得處理器執(zhí)行本文所述機(jī)制的計(jì)算機(jī)程序。例如,這些機(jī)制能夠涵蓋執(zhí)行所述機(jī)制的、以可由移動(dòng)設(shè)備300、推送通知服務(wù)器410和/或應(yīng)用發(fā)布者服務(wù)器420辨識(shí)的編程語言編寫的計(jì)算機(jī)程序(例如,以諸如Java、C、Objective-C、C++、C#、JavaScript、Visual Basic、HTML、XML、ColdFusion的編程語言、任何其他適當(dāng)方法或其任何適當(dāng)組合編寫的程序)。
在本文所述的機(jī)制采集關(guān)于用戶的個(gè)人信息或者能夠利用個(gè)人信息的情況下,能夠向用戶提供控制程序或特征是否采集用戶信息(例如,存儲(chǔ)于諸如移動(dòng)設(shè)備300的用戶設(shè)備上的關(guān)于用戶動(dòng)作的信息、存儲(chǔ)于諸如推送通知服務(wù)器410、應(yīng)用發(fā)布者服務(wù)器420等的遠(yuǎn)程設(shè)備上的關(guān)于用戶動(dòng)作的信息等)或者控制是否和/或如何進(jìn)行推送通知的機(jī)會(huì)。此外,在存儲(chǔ)或者使用某些數(shù)據(jù)之前,能夠以一個(gè)或多個(gè)方式對其進(jìn)行處理,以致個(gè)人可識(shí)別信息被去除。例如,用戶的身份能夠被處理,以致沒有個(gè)人可識(shí)別信息能夠被確定為是針對用戶的,或者在獲得位置信息的情況下用戶的地理位置能夠被泛化(諸如到城市、郵政編碼或者州級(jí)),以致不能夠確定用戶的特定位置。因此,用戶能夠控制如何關(guān)于用戶來采集信息并且內(nèi)容服務(wù)器如何使用信息。
在一些實(shí)施例中,任何適當(dāng)?shù)挠?jì)算機(jī)可讀介質(zhì)能夠被用于存儲(chǔ)用于執(zhí)行本文所述的功能和/或過程的指令。例如,在一些實(shí)施例中,計(jì)算機(jī)可讀介質(zhì)能夠是瞬時(shí)或者非瞬時(shí)的。例如,非瞬時(shí)計(jì)算機(jī)可讀介質(zhì)能夠包括如下介質(zhì):諸如磁性介質(zhì)(諸如硬盤、軟盤等)、光學(xué)介質(zhì)(諸如壓縮光盤、數(shù)字視頻光盤、藍(lán)光光盤等)、半導(dǎo)體介質(zhì)(諸如閃存、電可編程序只讀存儲(chǔ)器(EPROM)、電可擦除可編程只讀存儲(chǔ)器(EEPROM)等)、在傳輸期間沒有轉(zhuǎn)瞬即逝或者不缺乏任何持久性表相的任何適當(dāng)?shù)慕橘|(zhì)和/或任何適當(dāng)?shù)挠行谓橘|(zhì)。如另一示例,瞬時(shí)計(jì)算機(jī)可讀介質(zhì)能夠包括網(wǎng)絡(luò)、電線、導(dǎo)體、光纖、電路中的信號(hào)、在傳輸期間轉(zhuǎn)瞬即逝或者缺乏任何持久性表相的任何適當(dāng)?shù)慕橘|(zhì)和/或任何適當(dāng)?shù)臒o形介質(zhì)。
在所公開主題的一些實(shí)施例中,能夠以任意順序或次序來執(zhí)行圖1、2、6和7的以上過程步驟中的一些,而不限于在附圖中所顯示和描述的順序和次序。此外,能夠在適當(dāng)?shù)那闆r下大體上同時(shí)或者并行地執(zhí)行圖1、2、6和7的以上過程步驟中的一些,以減少延遲和處理時(shí)間。另外,應(yīng)指出的是,圖1、2、6和7僅作為示例而被提供??梢砸耘c所表示的順序不同的順序來執(zhí)行、同時(shí)地執(zhí)行或者省略這些附圖中所示的步驟中的至少一些。
所提供的本文所述的示例(以及如“諸如”、“例如,”、“包括”等所敘述的短語)不應(yīng)被理解為將要求保護(hù)的主題限定于具體的示例;相反地,示例旨在僅說明許多可能方面中的一些方面。還應(yīng)指出的是,如本文所用,術(shù)語機(jī)制能夠涵蓋硬件、軟件、固件或者其任何適當(dāng)?shù)慕M合。
因此,提供了用于管理指向安裝于用戶設(shè)備上的多個(gè)應(yīng)用的通知的方法、系統(tǒng)和介質(zhì)
盡管在前述說明性實(shí)施例中已對本發(fā)明進(jìn)行了描述和說明,但應(yīng)理解的是,僅以示例方式作出本公開,并且在不脫離本發(fā)明的精神和范圍的情況下,能夠作出對本發(fā)明的實(shí)施方式的細(xì)節(jié)的諸多改變,而本發(fā)明的精神和范圍僅由隨后的權(quán)利要求所限制。能夠以各種方式來組合以及重新排列所公開的實(shí)施例的特征。