顯示應(yīng)用程序界面的方法及裝置制造方法
【專利摘要】本發(fā)明公開了一種顯示應(yīng)用程序界面的方法及裝置,屬于計(jì)算機(jī)領(lǐng)域。方法包括:全屏顯示第一窗口,并由第一窗口顯示第一應(yīng)用程序界面;在第一窗口的上一層顯示第二窗口,并由第二窗口顯示第二應(yīng)用程序界面;當(dāng)進(jìn)行第一窗口和第二窗口之間的切換時(shí),將第一窗口始終保持焦點(diǎn)狀態(tài)。本發(fā)明通過全屏顯示第一窗口,在第一窗口的上一層顯示第二窗口,由這兩個(gè)窗口分別顯示不同的應(yīng)用程序界面,且將第一窗口始終保持焦點(diǎn)狀態(tài),使第一窗口顯示的應(yīng)用程序界面在不失焦點(diǎn)狀態(tài)下保持性能,第二窗口顯示的應(yīng)用程序界面在非焦點(diǎn)狀態(tài)下仍顯示在第一窗口之上,便于操作;另外,該種顯示應(yīng)用程序界面的方式不存在被攔截等限制,進(jìn)而可提高通用性與可靠性。
【專利說明】顯示應(yīng)用程序界面的方法及裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)【技術(shù)領(lǐng)域】,特別涉及一種顯示應(yīng)用程序界面的方法及裝置。
【背景技術(shù)】
[0002]隨著計(jì)算機(jī)技術(shù)的不斷發(fā)展,應(yīng)用程序的種類越來越多。為了滿足用戶對(duì)應(yīng)用程序的操作需求,常常會(huì)出現(xiàn)運(yùn)行一個(gè)應(yīng)用程序的同時(shí),借助其他應(yīng)用程序功能的場(chǎng)景。例如,在運(yùn)行游戲應(yīng)用程序時(shí),還需要借助語(yǔ)音應(yīng)用程序以實(shí)現(xiàn)邊游戲邊語(yǔ)音交流的功能,為此,在展示一個(gè)應(yīng)用程序界面的同時(shí),還需要展示其他應(yīng)用程序界面。
[0003]現(xiàn)有技術(shù)在同時(shí)顯示兩個(gè)或兩個(gè)以上的應(yīng)用程序界面時(shí),一般通過不同窗口分別顯示不同的應(yīng)用程序界面,如果要對(duì)其中的一個(gè)應(yīng)用程序界面進(jìn)行操作,需要在窗口間進(jìn)行切換,以將焦點(diǎn)定位在需要操作的窗口。針對(duì)邊游戲邊語(yǔ)音交流的應(yīng)用場(chǎng)景,現(xiàn)有技術(shù)在實(shí)現(xiàn)同時(shí)展示游戲應(yīng)用程序界面和語(yǔ)音應(yīng)用程序界面時(shí),首先啟動(dòng)語(yǔ)音應(yīng)用程序,一旦檢測(cè)到有游戲進(jìn)程啟動(dòng),便通過Hook (鉤子)技術(shù)將語(yǔ)音應(yīng)用程序界面注入到游戲應(yīng)用程序界面中,并強(qiáng)制在渲染游戲應(yīng)用程序界面時(shí)繪制出語(yǔ)音應(yīng)用程序界面,即實(shí)現(xiàn)在同一層窗口同時(shí)顯示兩個(gè)應(yīng)用程序界面。
[0004]在實(shí)現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)至少存在以下問題:
[0005]由于現(xiàn)有技術(shù)通過不同窗口分別顯示不同的應(yīng)用程序界面時(shí),需要將焦點(diǎn)定位在操作的窗口,導(dǎo)致焦點(diǎn)切換會(huì)比較頻繁,不利于用戶體驗(yàn);且該種方式針對(duì)全屏顯示游戲應(yīng)用程序界面的場(chǎng)景,一旦游戲應(yīng)用程序界面所在窗口失去焦點(diǎn),會(huì)影響游戲畫面,進(jìn)一步降低用戶體驗(yàn);而通過Hook機(jī)制實(shí)現(xiàn)在一個(gè)窗口同時(shí)顯示游戲界面和語(yǔ)音界面的方式,容易被各種安全應(yīng)用程序判斷為是木馬行為,從而對(duì)Hook動(dòng)作進(jìn)行攔截,導(dǎo)致現(xiàn)有技術(shù)通用性較差;另外,強(qiáng)行攔截畫面繪制,也可能導(dǎo)致游戲繪制不成功的風(fēng)險(xiǎn),因此,現(xiàn)有技術(shù)的可靠性較差。
【發(fā)明內(nèi)容】
[0006]為了在同時(shí)顯示兩個(gè)應(yīng)用程序界面的情況下,保證應(yīng)用程序的性能,進(jìn)而提高顯示應(yīng)用程序界面的通用性與可靠性,本發(fā)明實(shí)施例提供了一種顯示應(yīng)用程序界面的方法及裝置。所述技術(shù)方案如下:
[0007]—方面,提供了一種顯示應(yīng)用程序界面的方法,所述方法包括:
[0008]全屏顯示第一窗口,并由所述第一窗口顯示第一應(yīng)用程序界面;
[0009]在所述第一窗口的上一層顯示第二窗口,并由所述第二窗口顯示第二應(yīng)用程序界面;
[0010]當(dāng)進(jìn)行第一窗口和第二窗口之間的切換時(shí),將所述第一窗口始終保持焦點(diǎn)狀態(tài)。
[0011]其中,所述當(dāng)進(jìn)行第一窗口和第二窗口之間的切換時(shí),將所述第一窗口始終保持焦點(diǎn)狀態(tài),具體包括:
[0012]為所述第二窗口設(shè)置WS_EX_NOACTIVATE屬性,在進(jìn)行第一窗口和第二窗口之間的切換時(shí),根據(jù)所述WS_EX_NOACTIVATE屬性,使所述第一窗口始終保持焦點(diǎn)狀態(tài)。
[0013]進(jìn)一步地,所述由所述第二窗口顯示第二應(yīng)用程序界面,具體包括:
[0014]由所述第二窗口顯示完整模式的第二應(yīng)用程序界面;或者,由所述第二窗口顯示極速模式的第二應(yīng)用程序界面;
[0015]其中,所述完整模式的第二應(yīng)用程序界面顯示所述第二應(yīng)用程序的全部界面信息;所述極速模式的第二應(yīng)用程序界面顯示所述第二應(yīng)用程序的簡(jiǎn)化界面信息。
[0016]進(jìn)一步地,所述由所述第二窗口顯示完整模式的第二應(yīng)用程序界面;或者,由所述第二窗口顯示極速模式的第二應(yīng)用程序界面之后,還包括:
[0017]根據(jù)用戶的選擇將所述第二窗口顯示的第二應(yīng)用程序界面在完整模式和極速模式之間進(jìn)行切換,并在將所述第二應(yīng)用程序界面由完整模式切換至極速模式時(shí),釋放完整模式的第二應(yīng)用程序界面所占用的資源。
[0018]進(jìn)一步地,所述在所述第一窗口的上一層顯示第二窗口之后,還包括:
[0019]根據(jù)用戶的選擇將所述第二窗口在隱藏和顯示之間進(jìn)行切換。
[0020]其中,由所述第一窗口顯示的第一應(yīng)用程序界面為游戲應(yīng)用程序界面,由所述第二窗口顯示的第二應(yīng)用程序界面為語(yǔ)音應(yīng)用程序界面。
[0021]另一方面,還提供了一種顯示應(yīng)用程序界面的裝置,所述裝置包括:
[0022]第一顯示模塊,用于全屏顯示第一窗口,并由所述第一窗口顯示第一應(yīng)用程序界面;
[0023]第二顯示模塊,用于在所述第一窗口的上一層顯示第二窗口,并由所述第二窗口顯示第二應(yīng)用程序界面;
[0024]焦點(diǎn)保持模塊,用于當(dāng)進(jìn)行所述第一顯示模塊顯示的第一窗口和第二顯示模塊顯示的第二窗口之間的切換時(shí),將所述第一顯示模塊顯示的第一窗口始終保持焦點(diǎn)狀態(tài)。
[0025]其中,所述焦點(diǎn)保持模塊,具體用于為所述第二窗口設(shè)置WS_EX_NOACTIVATE屬性,當(dāng)進(jìn)行第一窗口和第二窗口之間的切換時(shí),根據(jù)所述WS_EX_NOACTIVATE屬性,使所述第一窗口始終保持焦點(diǎn)狀態(tài)。
[0026]進(jìn)一步地,所述第二顯示模塊,具體用于由所述第二窗口顯示完整模式的第二應(yīng)用程序界面;或者,由所述第二窗口顯示極速模式的第二應(yīng)用程序界面;
[0027]其中,所述完整模式的第二應(yīng)用程序界面顯示所述第二應(yīng)用程序的全部界面信息;所述極速模式的第二應(yīng)用程序界面顯示所述第二應(yīng)用程序的簡(jiǎn)化界面信息。
[0028]進(jìn)一步地,所述裝置,還包括:
[0029]第一切換模塊,用于根據(jù)用戶的選擇將所述第二窗口顯示的第二應(yīng)用程序界面在完整模式和極速模式之間進(jìn)行切換;
[0030]資源釋放模塊,用于在所述第一切換模塊將所述第二應(yīng)用程序界面由完整模式切換至極速模式時(shí),釋放完整模式的第二應(yīng)用程序界面所占用的資源。
[0031]進(jìn)一步地,所述裝置,還包括:
[0032]第二切換模塊,用于根據(jù)用戶的選擇將所述第二顯示模塊顯示的第二窗口在隱藏和顯示之間進(jìn)行切換。
[0033]其中,所述第一顯示模塊由所述第一窗口顯示的第一應(yīng)用程序界面為游戲應(yīng)用程序界面,所述第二顯示模塊由所述第二窗口顯示的第二應(yīng)用程序界面為語(yǔ)音應(yīng)用程序界面。
[0034]本發(fā)明實(shí)施例提供的技術(shù)方案帶來的有益效果是:
[0035]通過全屏顯示第一窗口,在第一窗口的上一層顯示第二窗口,由這兩個(gè)窗口分別顯示不同的應(yīng)用程序界面,且將第一窗口始終保持焦點(diǎn)狀態(tài),使第一窗口顯示的應(yīng)用程序界面在不失焦點(diǎn)狀態(tài)下保持性能,第二窗口顯示的應(yīng)用程序界面在非焦點(diǎn)狀態(tài)下仍顯示在第一窗口之上,便于操作;另外,該種顯示應(yīng)用程序界面的方式不存在被攔截等限制,進(jìn)而可提高通用性與可靠性。
【專利附圖】
【附圖說明】
[0036]為了更清楚地說明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對(duì)實(shí)施例描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0037]圖1是本發(fā)明實(shí)施例一提供的一種顯示應(yīng)用程序界面的方法流程圖;
[0038]圖2是本發(fā)明實(shí)施例二提供的一種顯示應(yīng)用程序界面的方法流程圖;
[0039]圖3是本發(fā)明實(shí)施例二提供的一種顯示應(yīng)用程序界面示意圖;
[0040]圖4是本發(fā)明實(shí)施例_提供的另一種顯不應(yīng)用程序界面不意圖;
[0041]圖5是本發(fā)明實(shí)施例三提供的一種顯示應(yīng)用程序界面的裝置結(jié)構(gòu)示意圖;
[0042]圖6是本發(fā)明實(shí)施例三提供的另一種顯示應(yīng)用程序界面的裝置結(jié)構(gòu)示意圖;
[0043]圖7是本發(fā)明實(shí)施例三提供的又一種顯示應(yīng)用程序界面的裝置結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0044]為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖對(duì)本發(fā)明實(shí)施方式作進(jìn)一步地詳細(xì)描述。
[0045]實(shí)施例一
[0046]本實(shí)施例提供了一種顯示應(yīng)用程序界面的方法,參見圖1,本實(shí)施例提供的方法流程具體如下:
[0047]101:全屏顯不第一窗口,并由第一窗口顯不第一應(yīng)用程序界面;
[0048]102:在第一窗口的上一層顯不第二窗口,并由第二窗口顯不第二應(yīng)用程序界面;
[0049]具體地,由第二窗口顯示第二應(yīng)用程序界面,具體包括:
[0050]由第二窗口顯示完整模式的第二應(yīng)用程序界面;或者,由第二窗口顯示極速模式的第二應(yīng)用程序界面;
[0051]其中,完整模式的第二應(yīng)用程序界面顯示第二應(yīng)用程序的全部界面信息;極速模式的第二應(yīng)用程序界面顯示第二應(yīng)用程序的簡(jiǎn)化界面信息。
[0052]進(jìn)一步地,由第二窗口顯示完整模式的第二應(yīng)用程序界面;或者,由第二窗口顯示極速模式的第二應(yīng)用程序界面之后,還包括:
[0053]根據(jù)用戶的選擇將第二窗口顯示的第二應(yīng)用程序界面在完整模式和極速模式之間進(jìn)行切換,并在將第二應(yīng)用程序界面由完整模式切換至極速模式時(shí),釋放完整模式的第二應(yīng)用程序界面所占用的資源。[0054]進(jìn)一步地,在第一窗口的上一層顯不第二窗口之后,還包括:
[0055]根據(jù)用戶的選擇將第二窗口在隱藏和顯示之間進(jìn)行切換。
[0056]103:當(dāng)進(jìn)行第一窗口和第二窗口之間的切換時(shí),將第一窗口始終保持焦點(diǎn)狀態(tài)。
[0057]其中,當(dāng)進(jìn)行第一窗口和第二窗口之間的切換時(shí),將第一窗口始終保持焦點(diǎn)狀態(tài),具體包括:
[0058]為第二窗口設(shè)置WS_EX_NOACTIVATE屬性,當(dāng)進(jìn)行第一窗口和第二窗口之間的切換時(shí),根據(jù)WS_EX_NOACTIVATE屬性,使第一窗口始終保持焦點(diǎn)狀態(tài)。
[0059]進(jìn)一步地,由第一窗口顯示的第一應(yīng)用程序界面為游戲應(yīng)用程序界面,由第二窗口顯示的第二應(yīng)用程序界面為語(yǔ)音應(yīng)用程序界面。
[0060]需要說明的是,本實(shí)施例及后續(xù)實(shí)施例中所涉及到的第一窗口可以為瀏覽器中的瀏覽窗口,也可以為脫離瀏覽器之外的游戲應(yīng)用程序的窗口,或是其他應(yīng)用程序的窗口,本實(shí)施例對(duì)此不作具體限定,同樣不對(duì)第二窗口具體為哪個(gè)應(yīng)用程序的窗口進(jìn)行限定,例如,第二窗口可以為語(yǔ)音應(yīng)用程序的窗口等等。
[0061]本實(shí)施例提供的方法,通過全屏顯不第一窗口,在第一窗口的上一層顯不第二窗口,由這兩個(gè)窗口分別顯示不同的應(yīng)用程序界面,且將第一窗口始終保持焦點(diǎn)狀態(tài),使第一窗口顯示的應(yīng)用程序界面在不失焦點(diǎn)狀態(tài)下保持性能,第二窗口顯示的應(yīng)用程序界面在非焦點(diǎn)狀態(tài)下仍顯示在第一窗口之上,便于操作;另外,由于本實(shí)施例提供的方法不依懶于Hook技術(shù),因而不會(huì)被其他安全應(yīng)用程序誤認(rèn)為是木馬行為而對(duì)其進(jìn)行攔截,也無(wú)需考慮使用Hook技術(shù)時(shí)所要考慮的操作系統(tǒng)下的管理權(quán)限問題,使該種顯示應(yīng)用程序界面的方式不存在被攔截等限制,進(jìn)而可提高通用性與可靠性。
[0062]為了更加清楚地闡述上述實(shí)施例提供的顯示應(yīng)用程序界面的方法,結(jié)合上述實(shí)施例的內(nèi)容,以如下實(shí)施例二為例,對(duì)顯示應(yīng)用程序界面的方法進(jìn)行舉例說明,詳見如下實(shí)施例二:
[0063]實(shí)施例二
[0064]本實(shí)施例提供了一種顯示應(yīng)用程序界面的方法,為了便于說明,結(jié)合上述實(shí)施例一的內(nèi)容,本實(shí)施例以第一窗口顯示的第一應(yīng)用程序界面為游戲應(yīng)用程序界面,第二窗口顯示的第二應(yīng)用程序界面為語(yǔ)音應(yīng)用程序界面為例,對(duì)本實(shí)施例提供的顯示應(yīng)用程序界面的方法進(jìn)行詳細(xì)地舉例說明。參見圖2,本實(shí)施例提供的方法流程具體如下:
[0065]201:全屏顯不第一窗口,并由第一窗口顯不游戲應(yīng)用程序界面;
[0066]針對(duì)該步驟,全屏顯示第一窗口的方式,同現(xiàn)有技術(shù)中全屏顯示的方式一樣,本實(shí)施對(duì)此不做具體限定。由第一窗口顯示游戲應(yīng)用程序界面時(shí),可通過渲染,將游戲應(yīng)用程序界面繪制在第一窗口,且由于第一窗口為全屏顯示,因而可全屏顯示游戲應(yīng)用程序界面。
[0067]202:在第一窗口的上一層顯不第二窗口,并由第二窗口顯不語(yǔ)音應(yīng)用程序界面;
[0068]具體地,在第一窗口的上一層顯不第二窗口時(shí),本實(shí)施例不對(duì)第二窗口的顯不位置進(jìn)行限定,由第二窗口顯示語(yǔ)音應(yīng)用程序界面時(shí),同樣可通過渲染,將語(yǔ)音應(yīng)用程序界面繪制在第二窗口,且由于第一窗口已經(jīng)為全屏顯不,而第二窗口位于第一窗口的上一層,因此,從視覺上看,語(yǔ)音應(yīng)用程序界面位于全屏游戲應(yīng)用程序界面之上。
[0069]此外,在由第二窗口顯示第二應(yīng)用程序界面時(shí),針對(duì)第一窗口顯示游戲應(yīng)用程序界面的場(chǎng)景,除了可以顯示完整的語(yǔ)音應(yīng)用程序界面外,為了不影響用戶游戲時(shí)在游戲應(yīng)用程序界面的操作,本實(shí)施例提供的方法還支持顯示語(yǔ)音應(yīng)用程序簡(jiǎn)化界面的方式,則由第二窗口顯示第二應(yīng)用程序界面,具體包括:
[0070]由第二窗口顯示完整模式的第二應(yīng)用程序界面;或者,由第二窗口顯示極速模式的第二應(yīng)用程序界面;
[0071]其中,完整模式的第二應(yīng)用程序界面顯示第二應(yīng)用程序的全部界面信息;極速模式的第二應(yīng)用程序界面顯示第二應(yīng)用程序的簡(jiǎn)化界面信息。
[0072]本實(shí)施例不對(duì)完整模式及極速模式下的語(yǔ)音應(yīng)用程序界面形式進(jìn)行限定,以圖3所示的顯示完整模式的應(yīng)用程序界面為例,圖3中,I為顯示游戲應(yīng)用程序界面的第一窗口,2為顯示語(yǔ)音應(yīng)用程序界面的第二窗口,且第二窗口顯示的為完整模式的語(yǔ)音應(yīng)用程序界面,該界面顯示了語(yǔ)音頻道ID (Identity,標(biāo)識(shí)),還包括成員列表子界面21、語(yǔ)音對(duì)話子界面22以及信息輸入子界面23等,當(dāng)然,具體實(shí)施時(shí),完整模式的語(yǔ)音應(yīng)用程序界面還可以包括其他信息,本實(shí)施例對(duì)此不做具體限定。以圖4所示的顯示極速模式的應(yīng)用程序界面為例,圖4中,I為顯示游戲應(yīng)用程序界面的第一窗口,2’為顯示語(yǔ)音應(yīng)用程序界面的第二窗口,該第二窗口為極速模式的語(yǔ)音應(yīng)用程序界面,極速模式的語(yǔ)音應(yīng)用程序界面設(shè)計(jì)簡(jiǎn)單,僅保留跟語(yǔ)音協(xié)作相關(guān)的功能,圖4所示的極速模式的語(yǔ)音應(yīng)用程序界面中顯示了語(yǔ)音房間號(hào)信息,除此之外,還以幾個(gè)圖標(biāo)顯示了語(yǔ)音應(yīng)用程序的主要功能,當(dāng)然,具體實(shí)施時(shí),該極速模式的語(yǔ)音應(yīng)用程序界面還可以包括其他信息,本實(shí)施例對(duì)此不做具體限定,同樣不對(duì)以完整模式顯示語(yǔ)音應(yīng)用程序界面,還是以極速模式顯示語(yǔ)音應(yīng)用程序界面的方式進(jìn)行限定。
[0073]無(wú)論顯示完整模式的語(yǔ)音應(yīng)用程序界面,還是顯示極速模式的語(yǔ)音應(yīng)用程序界面,用戶在全屏游戲應(yīng)用程序界面下,均可以在不離開游戲界面的情況下看到語(yǔ)音應(yīng)用程序界面,進(jìn)而可以直接通過鼠標(biāo)點(diǎn)擊操作語(yǔ)音應(yīng)用程序界面,進(jìn)行語(yǔ)音操作。另外,為了滿足用戶對(duì)語(yǔ)音應(yīng)用程序界面的顯示需求,由第二窗口顯示完整模式的第二應(yīng)用程序界面;或者,由第二窗口顯示極速模式的第二應(yīng)用程序界面之后,本實(shí)施例提供的方法還包括:根據(jù)用戶的選擇將第二窗口顯示的第二應(yīng)用程序界面在完整模式和極速模式之間進(jìn)行切換的過程。對(duì)于兩個(gè)模式切換的觸發(fā)方式,可以通過設(shè)置切換按鈕實(shí)現(xiàn),例如,在第一窗口或第二窗口設(shè)置第二窗口的模式切換按鈕,用戶通過對(duì)該按鈕的選取實(shí)現(xiàn)第二應(yīng)用程序界面的模式切換。除此之外,也可通過設(shè)置選項(xiàng)實(shí)現(xiàn),例如,在第一窗口或第二窗口設(shè)置第二應(yīng)用程序界面的顯示模式選項(xiàng),用戶通過對(duì)選項(xiàng)的選擇實(shí)現(xiàn)顯示對(duì)應(yīng)模式的第二應(yīng)用程序界面,當(dāng)然,還可以選擇其他切換方式,本實(shí)施例對(duì)此不作具體限定。
[0074]進(jìn)一步地,由于極速模式的第二應(yīng)用程序界面所顯示的信息較完整模式的第二應(yīng)用程序界面所顯示的信息要少,因此,本實(shí)施例提供的方法在將第二應(yīng)用程序界面由完整模式切換至極速模式時(shí),還包括釋放完整模式的第二應(yīng)用程序界面所占用的資源的步驟,由此節(jié)省完整模式較極速模式多占用的資源。
[0075]其中,釋放完整模式的第二應(yīng)用程序界面所占用的資源時(shí),釋放的資源包括但不限于本地Π (User Interface,用戶界面)層、網(wǎng)絡(luò)層和語(yǔ)音傳輸層的資源,具體如下:
[0076](I)釋放本地Π層占用的資源:包括但不限于語(yǔ)音應(yīng)用程序界面的語(yǔ)音房間列表,以及使用瀏覽器界面展示的營(yíng)銷信息等等,通過釋放該Π層的資源可大幅減少內(nèi)存占用。[0077](2)釋放網(wǎng)絡(luò)層占用的資源:由于語(yǔ)音服務(wù)器廣播消息對(duì)帶寬占用有很大影響,因此,極速模式的語(yǔ)音應(yīng)用程序界面在功能設(shè)計(jì)上對(duì)這些帶寬占用大的資源進(jìn)行規(guī)避,當(dāng)極速模式啟動(dòng)后,服務(wù)器停止下發(fā)語(yǔ)音房間的成員列表、成員進(jìn)退狀態(tài)刷新,文字聊天信息等內(nèi)容,進(jìn)而可大幅節(jié)省帶寬。
[0078](3)釋放語(yǔ)音傳輸層占用的資源:針對(duì)該層,一方面,極速模式根據(jù)游戲場(chǎng)景下的語(yǔ)音需求,在音質(zhì)和帶寬占用之間做平衡,犧牲部分音質(zhì)達(dá)到更小的帶寬占用;另外一方面,改變屏蔽語(yǔ)音的實(shí)現(xiàn)方式,從本地屏蔽,改成在服務(wù)器增加下發(fā)開關(guān),在屏蔽房間所有語(yǔ)音或者屏蔽單個(gè)成員語(yǔ)音的情況下,語(yǔ)音服務(wù)器會(huì)主動(dòng)停止語(yǔ)音數(shù)據(jù)下發(fā),以達(dá)到節(jié)源頭的效果。
[0079]通過釋放上述資源,可以保證語(yǔ)音應(yīng)用程序可在低資源的情況下運(yùn)行,另外,通過在音質(zhì)和帶寬占用之間做平衡,還可保證用戶在游戲應(yīng)用程序界面及語(yǔ)音應(yīng)用程序界面之間進(jìn)行切換時(shí),語(yǔ)音通訊不受影響。
[0080]進(jìn)一步地,無(wú)論顯示完整模式的第二應(yīng)用程序界面,還是顯示極速模式的第二應(yīng)用程序界面,本實(shí)施例提供的方法在第一窗口的上一層顯示第二窗口之后,還包括:根據(jù)用戶的選擇將第二窗口在隱藏和顯示之間進(jìn)行切換。第二窗口隱藏和顯示的觸發(fā)方式具體可通過設(shè)置快捷鍵的方式實(shí)現(xiàn),例如,通過快捷鍵F9實(shí)現(xiàn)隱藏和顯示第二窗口的功能,以當(dāng)前顯示第二窗口為例,如果用戶點(diǎn)擊快捷鍵F9,則隱藏第二窗口,如果用戶再次點(diǎn)擊快捷鍵F9,則顯示第二窗口。當(dāng)然,除了快捷鍵F9,還可以選擇其他快捷鍵實(shí)現(xiàn)該功能,且除了以快捷鍵的方式實(shí)現(xiàn)該功能外,還可以選擇其他方式,本實(shí)施例對(duì)此不做具體限定。
[0081]203:當(dāng)進(jìn)行第一窗口和第二窗口之間的切換時(shí),將第一窗口始終保持焦點(diǎn)狀態(tài)。
[0082]針對(duì)該步驟,之所以當(dāng)進(jìn)行第一窗口和第二窗口之間的切換時(shí),將第一窗口始終保持焦點(diǎn)狀態(tài),是為了使游戲應(yīng)用程序界面不失焦點(diǎn)狀態(tài),從而實(shí)現(xiàn)不脫離游戲環(huán)境的語(yǔ)音操作體驗(yàn)。為此,當(dāng)進(jìn)行第一窗口和第二窗口之間的切換時(shí),本實(shí)施例具體采取了如下將第一窗口始終保持焦點(diǎn)狀態(tài)的方式:
[0083]為第二窗口設(shè)置WS_EX_NOACTIVATE屬性,在進(jìn)行第一窗口和第二窗口之間的切換時(shí),根據(jù)WS_EX_NOACTIVATE屬性,使第一窗口始終保持焦點(diǎn)狀態(tài)。
[0084]其中,Windows操作系統(tǒng)在處理具有WS_EX_NOACTIVATE屬性的窗口時(shí),鼠標(biāo)等大部分Windows消息會(huì)正常的傳遞給該窗口處理,但是始終不會(huì)將該窗口設(shè)置為焦點(diǎn)狀態(tài)。第二窗口因使用了 WS_EX_NOACTIVATE屬性,不僅使其所顯示的語(yǔ)音應(yīng)用程序界面能默認(rèn)顯示在游戲應(yīng)用程序界面所在窗口上層,而且在操作語(yǔ)音應(yīng)用程序界面上的功能時(shí),該第二窗口始終不獲取焦點(diǎn),使得原本處于焦點(diǎn)狀態(tài)的第一窗口始終不會(huì)失去焦點(diǎn),因此,游戲應(yīng)用程序界面始終以全屏進(jìn)行顯示,不對(duì)用戶的游戲操作產(chǎn)生影響,進(jìn)而可以給全屏游戲環(huán)境下的用戶,帶來無(wú)需切換出游戲窗口直接操作語(yǔ)音功能的便捷體驗(yàn)。
[0085]本實(shí)施例提供的方法,通過全屏顯不第一窗口,在第一窗口的上一層顯不第二窗口,由這兩個(gè)窗口分別顯示不同的應(yīng)用程序界面,且將第一窗口始終保持焦點(diǎn)狀態(tài),使第一窗口顯示的應(yīng)用程序界面在不失焦點(diǎn)狀態(tài)下保持性能,第二窗口顯示的應(yīng)用程序界面在非焦點(diǎn)狀態(tài)下仍顯示在第一窗口之上,便于操作;另外,由于本實(shí)施例提供的方法不依懶于Hook技術(shù),因而不會(huì)被其他安全應(yīng)用程序誤認(rèn)為是木馬行為而對(duì)其進(jìn)行攔截,也無(wú)需考慮使用Hook技術(shù)時(shí)所要考慮的操作系統(tǒng)下的管理權(quán)限問題,使該種顯示應(yīng)用程序界面的方式不存在被攔截等限制,進(jìn)而可提高通用性與可靠性。
[0086]實(shí)施例三
[0087]本實(shí)施例提供了一種顯示應(yīng)用程序界面的裝置,該裝置用于執(zhí)行上述實(shí)施例一和實(shí)施例二提供的顯示應(yīng)用程序界面的方法。參見圖5,該裝置包括:
[0088]第一顯不模塊501,用于全屏顯不第一窗口,并由第一窗口顯不第一應(yīng)用程序界面;
[0089]第二顯不模塊502,用于在第一窗口的上一層顯不第二窗口,并由第二窗口顯不第二應(yīng)用程序界面;
[0090]焦點(diǎn)保持模塊503,用于當(dāng)進(jìn)行第一顯示模塊501顯示的第一窗口和第二顯示模塊502顯不的第二窗口之間的切換時(shí),將第一顯不模塊501顯不的第一窗口始終保持焦點(diǎn)狀態(tài)。
[0091]其中,第一顯不模塊501顯不第一窗口,由第一窗口顯不第一應(yīng)用程序界面的方式詳見上述實(shí)施例二中步驟201的相關(guān)描述,此處不再贅述。第二顯示模塊502在第一窗口的上一層顯示第二窗口,由第二窗口顯示第二應(yīng)用程序界面的方式詳見上述實(shí)施例二中步驟202的相關(guān)描述,此處不再贅述。焦點(diǎn)保持模塊503將第一窗口始終保持焦點(diǎn)狀態(tài)的方式詳見上述實(shí)施例二中步驟203的相關(guān)描述,此處不再贅述。
[0092]結(jié)合上述實(shí)施例二中步驟203的描述,焦點(diǎn)保持模塊503,具體用于為第二窗口設(shè)置WS_EX_NOACTIVATE屬性,當(dāng)進(jìn)行第一窗口和第二窗口之間的切換時(shí),根據(jù)WS_EX_N0ACTIVATE屬性,使第一窗口始終保持焦點(diǎn)狀態(tài)。
[0093]進(jìn)一步地,結(jié)合上述實(shí)施例二中步驟202的相關(guān)描述,第二顯示模塊502,具體用于由第二窗口顯示完整模式的第二應(yīng)用程序界面;或者,由第二窗口顯示極速模式的第二應(yīng)用程序界面;
[0094]其中,完整模式的第二應(yīng)用程序界面顯示第二應(yīng)用程序的全部界面信息;極速模式的第二應(yīng)用程序界面顯示第二應(yīng)用程序的簡(jiǎn)化界面信息。
[0095]結(jié)合上述實(shí)施例二中步驟202的相關(guān)描述,在增加顯示應(yīng)用程序界面的靈活性的同時(shí),進(jìn)而節(jié)約資源,參見圖6,該裝置,還包括:
[0096]第一切換模塊504,用于根據(jù)用戶的選擇將第二窗口顯示的第二應(yīng)用程序界面在完整模式和極速模式之間進(jìn)行切換;
[0097]資源釋放模塊505,用于在第一切換模塊504將第二應(yīng)用程序界面由完整模式切換至極速模式時(shí),釋放完整模式的第二應(yīng)用程序界面所占用的資源。
[0098]其中,第一切換模塊504將第二應(yīng)用程序界面在完整模式和極速模式之間進(jìn)行切換的方式,以及資源釋放模塊505釋放完整模式的第二應(yīng)用程序界面所占用的資源的方式,均可詳見上述實(shí)施例二中步驟202的相關(guān)描述,此處不再贅述。
[0099]進(jìn)一步地,為了滿足用戶對(duì)應(yīng)用程序界面的顯示需求,參見圖7,該裝置,還包括:
[0100]第二切換模塊506,用于根據(jù)用戶的選擇將第二顯示模塊502顯示的第二窗口在隱藏和顯示之間進(jìn)行切換。該第二切換模塊506將第二窗口在隱藏和現(xiàn)實(shí)之間進(jìn)行切換的方式詳見上述實(shí)施例二中步驟202的相關(guān)描述,此處不再贅述。
[0101]具體地,實(shí)際應(yīng)用中,第一顯示模塊501由第一窗口顯示的第一應(yīng)用程序界面可以為游戲應(yīng)用程序界面,第二顯示模塊502由第二窗口顯示的第二應(yīng)用程序界面可以為語(yǔ)音應(yīng)用程序界面。當(dāng)然,除此之外,第一窗口和第二窗口還可以顯示其他應(yīng)用程序界面,本實(shí)施例不對(duì)第一窗口具體顯示哪個(gè)第一應(yīng)用程序界面進(jìn)行限定,同樣不對(duì)第二窗口具體顯示哪個(gè)第二應(yīng)用程序界面進(jìn)行限定。
[0102]本實(shí)施例提供的裝置,通過全屏顯不第一窗口,在第一窗口的上一層顯不第二窗口,由這兩個(gè)窗口分別顯示不同的應(yīng)用程序界面,且將第一窗口始終保持焦點(diǎn)狀態(tài),使第一窗口顯示的應(yīng)用程序界面在不失焦點(diǎn)狀態(tài)下保持性能,第二窗口顯示的應(yīng)用程序界面在非焦點(diǎn)狀態(tài)下仍顯示在第一窗口之上,便于操作;另外,由于本實(shí)施例提供的裝置在顯示應(yīng)用程序界面時(shí),不依懶于Hook技術(shù),因而不會(huì)被其他安全應(yīng)用程序誤認(rèn)為是木馬行為而對(duì)其進(jìn)行攔截,也無(wú)需考慮使用Hook技術(shù)時(shí)所要考慮的操作系統(tǒng)下的管理權(quán)限問題,使該種顯示應(yīng)用程序界面的方式不存在被攔截等限制,進(jìn)而可提高通用性與可靠性。
[0103]需要說明的是:上述實(shí)施例提供的顯示應(yīng)用程序界面的裝置在顯示應(yīng)用程序界面時(shí),僅以上述各功能模塊的劃分進(jìn)行舉例說明,實(shí)際應(yīng)用中,可以根據(jù)需要而將上述功能分配由不同的功能模塊完成,即將裝置的內(nèi)部結(jié)構(gòu)劃分成不同的功能模塊,以完成以上描述的全部或者部分功能。另外,上述實(shí)施例提供的顯示應(yīng)用程序界面的裝置與顯示應(yīng)用程序界面的方法實(shí)施例屬于同一構(gòu)思,其具體實(shí)現(xiàn)過程詳見方法實(shí)施例,這里不再贅述。
[0104]上述本發(fā)明實(shí)施例序號(hào)僅僅為了描述,不代表實(shí)施例的優(yōu)劣。
[0105]本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例的全部或部分步驟可以通過硬件來完成,也可以通過程序來指令相關(guān)的硬件完成,所述的程序可以存儲(chǔ)于一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,上述提到的存儲(chǔ)介質(zhì)可以是只讀存儲(chǔ)器,磁盤或光盤等。
[0106]以上所述僅為本發(fā)明的較佳實(shí)施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1.一種顯示應(yīng)用程序界面的方法,其特征在于,所述方法包括: 全屏顯示第一窗口,并由所述第一窗口顯示第一應(yīng)用程序界面; 在所述第一窗口的上一層顯示第二窗口,并由所述第二窗口顯示第二應(yīng)用程序界面; 當(dāng)進(jìn)行第一窗口和第二窗口之間的切換時(shí),將所述第一窗口始終保持焦點(diǎn)狀態(tài)。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述當(dāng)進(jìn)行第一窗口和第二窗口之間的切換時(shí),將所述第一窗口始終保持焦點(diǎn)狀態(tài),具體包括: 為所述第二窗口設(shè)置WS_EX_NOACTIVATE屬性,在進(jìn)行第一窗口和第二窗口之間的切換時(shí),根據(jù)所述WS_EX_NOACTIVATE屬性,使所述第一窗口始終保持焦點(diǎn)狀態(tài)。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述由所述第二窗口顯示第二應(yīng)用程序界面,具體包括: 由所述第二窗口顯示完整模式的第二應(yīng)用程序界面;或者,由所述第二窗口顯示極速模式的第二應(yīng)用程 序界面; 其中,所述完整模式的第二應(yīng)用程序界面顯示所述第二應(yīng)用程序的全部界面信息;所述極速模式的第二應(yīng)用程序界面顯示所述第二應(yīng)用程序的簡(jiǎn)化界面信息。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述由所述第二窗口顯示完整模式的第二應(yīng)用程序界面;或者,由所述第二窗口顯示極速模式的第二應(yīng)用程序界面之后,還包括: 根據(jù)用戶的選擇將所述第二窗口顯示的第二應(yīng)用程序界面在完整模式和極速模式之間進(jìn)行切換,并在將所述第二應(yīng)用程序界面由完整模式切換至極速模式時(shí),釋放完整模式的第二應(yīng)用程序界面所占用的資源。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述在所述第一窗口的上一層顯示第二窗口之后,還包括: 根據(jù)用戶的選擇將所述第二窗口在隱藏和顯示之間進(jìn)行切換。
6.根據(jù)權(quán)利要求1至5中任一權(quán)利要求所述的方法,其特征在于,由所述第一窗口顯示的第一應(yīng)用程序界面為游戲應(yīng)用程序界面,由所述第二窗口顯示的第二應(yīng)用程序界面為語(yǔ)音應(yīng)用程序界面。
7.—種顯示應(yīng)用程序界面的裝置,其特征在于,所述裝置包括: 第一顯示模塊,用于全屏顯示第一窗口,并由所述第一窗口顯示第一應(yīng)用程序界面; 第二顯不模塊,用于在所述第一顯不模塊顯不的第一窗口的上一層顯不第二窗口,并由所述第二窗口顯示第二應(yīng)用程序界面; 焦點(diǎn)保持模塊,用于當(dāng)進(jìn)行所述第一顯示模塊顯示的第一窗口和第二顯示模塊顯示的第二窗口之間的切換時(shí),將所述第一顯不模塊顯不的第一窗口始終保持焦點(diǎn)狀態(tài)。
8.根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述焦點(diǎn)保持模塊,具體用于為所述第二窗口設(shè)置WS_EX_NOACTIVATE屬性,當(dāng)進(jìn)行第一窗口和第二窗口之間的切換時(shí),根據(jù)所述WS_EX_NOACTIVATE屬性,使所述第一窗口始終保持焦點(diǎn)狀態(tài)。
9.根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述第二顯示模塊,具體用于由所述第二窗口顯示完整模式的第二應(yīng)用程序界面;或者,由所述第二窗口顯示極速模式的第二應(yīng)用程序界面; 其中,所述完整模式的第二應(yīng)用程序界面顯示所述第二應(yīng)用程序的全部界面信息;所述極速模式的第二應(yīng)用程序界面顯示所述第二應(yīng)用程序的簡(jiǎn)化界面信息。
10.根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述裝置,還包括: 第一切換模塊,用于根據(jù)用戶的選擇將所述第二窗口顯示的第二應(yīng)用程序界面在完整模式和極速模式之間進(jìn)行切換; 資源釋放模塊,用于在所述第一切換模塊將所述第二應(yīng)用程序界面由完整模式切換至極速模式時(shí),釋放完整模式的第二應(yīng)用程序界面所占用的資源。
11.根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述裝置,還包括: 第二切換模塊,用于根據(jù)用戶的選擇將所述第二顯示模塊顯示的第二窗口在隱藏和顯示之間進(jìn)行切換。
12.根據(jù)權(quán)利要求7至11中任一權(quán)利要求所述的裝置,其特征在于,所述第一顯示模塊由所述第一窗口顯示的第一應(yīng)用程序界面為游戲應(yīng)用程序界面,所述第二顯示模塊由第二窗口顯示的第二應(yīng)用程序 界面為語(yǔ)音應(yīng)用程序界面。
【文檔編號(hào)】G06F3/0481GK103455234SQ201210178987
【公開日】2013年12月18日 申請(qǐng)日期:2012年6月1日 優(yōu)先權(quán)日:2012年6月1日
【發(fā)明者】幸暉皓, 趙元學(xué), 胡藝, 曹寧, 蒲東林, 于振宇, 王歡, 江雷, 徐凱, 趙清友, 何子健, 張聰 申請(qǐng)人:騰訊科技(深圳)有限公司