欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

應(yīng)用程序開發(fā)系統(tǒng)中的組件管理方法和裝置與流程

文檔序號:11949510閱讀:303來源:國知局
應(yīng)用程序開發(fā)系統(tǒng)中的組件管理方法和裝置與流程

本發(fā)明涉及程序開發(fā)領(lǐng)域,尤其涉及一種應(yīng)用程序開發(fā)系統(tǒng)中的組件管理方法和裝置。



背景技術(shù):

目前,在不同的應(yīng)用程序中可能會重復(fù)出現(xiàn)相同的應(yīng)用功能。例如,在不同的視頻播放軟件中重復(fù)出現(xiàn)例如播放、下載或上傳等應(yīng)用功能。相同的應(yīng)用功能往往基于相同或相似的代碼編程。

在開發(fā)APP(應(yīng)用程序,Application的縮寫)的過程中,對于相同應(yīng)用功能的編程,一般采用將現(xiàn)有實現(xiàn)該功能的代碼復(fù)制粘貼到待開發(fā)應(yīng)用程序中。采用上述編程方式,不便于應(yīng)用程序的整體管理,可能存在不兼容的問題。與此同時,采用上述編程方式不能對該部分代碼進行單獨測試,增加應(yīng)用程序檢測的工作量。



技術(shù)實現(xiàn)要素:

技術(shù)問題

有鑒于此,本發(fā)明要解決的技術(shù)問題是,如何實現(xiàn)便捷、高效地重復(fù)使用能夠?qū)崿F(xiàn)特定功能的代碼。

解決方案

為了解決上述技術(shù)問題,根據(jù)本發(fā)明的一實施例,提供了一種應(yīng)用程序開發(fā)系統(tǒng)中的組件管理方法,包括:

根據(jù)目標組件的標識信息,從組件配置倉庫中獲取與所述標識信息對應(yīng)的配置文件;

根據(jù)所述配置文件,獲取生成所述目標組件所需要的各待編譯文件;

將所獲取的各待編譯文件編譯生成所述目標組件。

對于上述方法,在一種可能的實現(xiàn)方式中,根據(jù)所述配置文件,獲取生成所述目標組件所需要的各待編譯文件,包括:

從所述配置文件中,獲取源文件地址,并獲取用于生成所述目標組件所需要的資源文件地址、系統(tǒng)庫地址、靜態(tài)庫地址和動態(tài)庫地址;

根據(jù)所述源文件地址,獲取源文件,并分別根據(jù)所述資源文件地址、所述系統(tǒng)庫地址、所述靜態(tài)庫地址和所述動態(tài)庫地址,獲取生成所述目標組件所需要的資源文件、系統(tǒng)庫、靜態(tài)庫和動態(tài)庫。

對于上述方法,在一種可能的實現(xiàn)方式中,根據(jù)目標組件的標識信息,從組件配置倉庫中獲取與所述標識信息對應(yīng)的配置文件,包括:

在通過靜態(tài)庫工程的方式調(diào)用所述目標組件的情況下,根據(jù)目標組件的標識信息,從組件配置倉庫中獲取與所述標識信息對應(yīng)的配置文件;或

在通過靜態(tài)庫或動態(tài)庫的方式調(diào)用所述目標組件的情況下,根據(jù)目標組件的標識信息,從組件配置倉庫中獲取與所述標識信息對應(yīng)的配置文件。

對于上述方法,在一種可能的實現(xiàn)方式中,還包括:

在所述目標組件生成之后,對所述目標組件的特定功能進行測試,以確定所述目標組件是否能夠?qū)崿F(xiàn)所述特定功能。

為了解決上述技術(shù)問題,根據(jù)本發(fā)明的另一實施例,提供了一種應(yīng)用程序開發(fā)系統(tǒng)中的組件管理裝置,包括:

第一獲取模塊,用于根據(jù)目標組件的標識信息,從組件配置倉庫中獲取與所述標識信息對應(yīng)的配置文件;

第二獲取模塊,與所述第一獲取模塊連接,用于根據(jù)所述配置文件,獲取生成所述目標組件所需要的各待編譯文件;

編譯模塊,與所述第二獲取模塊連接,用于將所獲取的各待編譯文件編譯生成所述目標組件。

對于上述裝置,在一種可能的實現(xiàn)方式中,第二獲取模塊,包括:

地址獲取單元,用于從所述配置文件中,獲取源文件地址,并獲取用于生成所述目標組件所需要的資源文件地址、系統(tǒng)庫地址、靜態(tài)庫地址和動態(tài)庫地址;

文件獲取單元,與所述地址獲取單元連接,用于根據(jù)所述源文件地址,獲取源文件,并分別根據(jù)所述資源文件地址、所述系統(tǒng)庫地址、所述靜態(tài)庫地址和所述動態(tài)庫地址,獲取生成所述目標組件所需要的資源文件、系統(tǒng)庫、靜態(tài)庫和動態(tài)庫。

對于上述裝置,在一種可能的實現(xiàn)方式中,第一獲取模塊,具體用于

在通過靜態(tài)庫工程的方式調(diào)用所述目標組件的情況下,根據(jù)目標組件的標識信息,從組件配置倉庫中獲取與所述標識信息對應(yīng)的配置文件;或

在通過靜態(tài)庫或動態(tài)庫的方式調(diào)用所述目標組件的情況下,根據(jù)目標組件的標識信息,從組件配置倉庫中獲取與所述標識信息對應(yīng)的配置文件。

對于上述裝置,在一種可能的實現(xiàn)方式中,還包括:

檢測模塊,與所述編譯模塊連接,用于在所述目標組件生成之后,對所述目標組件的特定功能進行測試,以確定所述目標組件是否能夠?qū)崿F(xiàn)所述特定功能。

有益效果

本發(fā)明實施例的應(yīng)用程序開發(fā)系統(tǒng)中的組件管理方法,通過目標組件的標識信息獲取對應(yīng)的配置文件后,通過配置文件可以獲取生成目標組件所需要的各待編譯文件,從而將所獲取的各待編譯文件編譯生成目標組件。在應(yīng)用程序開發(fā)過程中,本發(fā)明實施例的應(yīng)用程序開發(fā)系統(tǒng)中的組件管理方法,可以便捷地重復(fù)調(diào)用實現(xiàn)特定功能的目標組件,提高應(yīng)用程序開發(fā)的效率。

進一步地,本發(fā)明實施例的應(yīng)用程序開發(fā)系統(tǒng)中的組件管理方法,在目標組件生成之后,通過測試以確定目標組件是否能夠?qū)崿F(xiàn)特定功能,可以提高組件的健壯性。

根據(jù)下面參考附圖對示例性實施例的詳細說明,本發(fā)明的其它特征及方面將變得清楚。

附圖說明

包含在說明書中并且構(gòu)成說明書的一部分的附圖與說明書一起示出了本發(fā)明的示例性實施例、特征和方面,并且用于解釋本發(fā)明的原理。

圖1示出根據(jù)本發(fā)明一實施例的一種應(yīng)用程序開發(fā)系統(tǒng)中的組件管理方法的流程圖;

圖2示出根據(jù)本發(fā)明一實施例的一種應(yīng)用程序開發(fā)系統(tǒng)中的組件管理方法的另一流程圖;

圖3示出根據(jù)本發(fā)明一實施例的一種應(yīng)用程序開發(fā)系統(tǒng)中的組件管理方法的另一流程圖;

圖4示出根據(jù)本發(fā)明一實施例的一種應(yīng)用程序開發(fā)系統(tǒng)中的組件管理方法的另一流程圖;

圖5示出根據(jù)本發(fā)明一實施例的一種應(yīng)用程序開發(fā)系統(tǒng)中的組件管理方法的另一流程圖;

圖6示出根據(jù)本發(fā)明一實施例的一種應(yīng)用程序開發(fā)系統(tǒng)中的組件管理裝置的結(jié)構(gòu)框圖;

圖7示出根據(jù)本發(fā)明一實施例的一種應(yīng)用程序開發(fā)系統(tǒng)中的組件管理裝置的另一結(jié)構(gòu)框圖;

圖8示出根據(jù)本發(fā)明一實施例的一種應(yīng)用程序開發(fā)系統(tǒng)中的組件管理裝置的另一結(jié)構(gòu)框圖;

圖9示出根據(jù)本發(fā)明一實施例的一種應(yīng)用程序開發(fā)系統(tǒng)中的組件管理設(shè)備的結(jié)構(gòu)框圖。

具體實施方式

以下將參考附圖詳細說明本發(fā)明的各種示例性實施例、特征和方面。附圖中相同的附圖標記表示功能相同或相似的元件。盡管在附圖中示出了實施例的各種方面,但是除非特別指出,不必按比例繪制附圖。

在這里專用的詞“示例性”意為“用作例子、實施例或說明性”。這里作為“示例性”所說明的任何實施例不必解釋為優(yōu)于或好于其它實施例。

另外,為了更好的說明本發(fā)明,在下文的具體實施方式中給出了眾多的具體細節(jié)。本領(lǐng)域技術(shù)人員應(yīng)當理解,沒有某些具體細節(jié),本發(fā)明同樣可以實施。在一些實例中,對于本領(lǐng)域技術(shù)人員熟知的方法、手段、元件和電路未作詳細描述,以便于凸顯本發(fā)明的主旨。

實施例1

圖1示出根據(jù)本發(fā)明一實施例的一種應(yīng)用程序開發(fā)系統(tǒng)中的組件管理方法的流程圖。如圖1所示,該應(yīng)用程序開發(fā)系統(tǒng)中的組件管理方法主要可以包括:

步驟101:根據(jù)目標組件的標識信息,從組件配置倉庫中獲取與所述標識信息對應(yīng)的配置文件;

步驟102:根據(jù)所述配置文件,獲取生成所述目標組件所需要的各待編譯文件;

步驟103:將所獲取的各待編譯文件編譯生成所述目標組件。

在應(yīng)用程序開發(fā)的過程中,為了有利于源代碼的調(diào)取和集成,需要將源代碼編譯成可以單獨工作的組件。其中,應(yīng)用程序可以指為完成某項或多項特定工作的計算機程序。組件可以指具有相對獨立功能、接口由契約指定、和語境有明顯依賴關(guān)系、可獨立部署、可組裝的軟件實體。采用不同組件所實現(xiàn)的功能可以包括多種,例如播放功能、下載功能或上傳功能等。組件的標識信息可以指用來區(qū)分不同組件的信息,例如組件名稱、組件版本號等,本實施例對此不作限制。舉例而言,組件的標識信息可以為播放組件1.0版本或下載組件1.1.1版本。

對應(yīng)地,每個組件設(shè)置有配置文件例如Spec(Specification)文件。其中,Spec文件可以用于對例如產(chǎn)品、系統(tǒng)或服務(wù)等的詳細規(guī)格進行說明。在本實施例中,Spec文件可以用于對組件的詳細規(guī)格進行說明。組件配置倉庫用于管理各組件的配置文件。舉例而言,在目標組件為“播放組件1.0版本”的情況下,根據(jù)目標組件的標識信息“播放組件1.0版本”,可以從組件配置倉庫中獲取“播放組件1.0版本”對應(yīng)的Spec文件。進一步地,根據(jù)“播放組件1.0版本”對應(yīng)的Spec文件,可以獲取生成“播放組件1.0版本”所需要的各待編譯文件。

在一種可能的實現(xiàn)方式中,如圖2所示,根據(jù)目標組件的標識信息,從組件配置倉庫中獲取與所述標識信息對應(yīng)的配置文件(步驟101),包括:

步驟201:在通過靜態(tài)庫工程的方式調(diào)用所述目標組件的情況下,根據(jù)目標組件的標識信息,從組件配置倉庫中獲取與所述標識信息對應(yīng)的配置文件。

在一種可能的實現(xiàn)方式中,如圖3所示,根據(jù)目標組件的標識信息,從組件配置倉庫中獲取與所述標識信息對應(yīng)的配置文件(步驟101),包括:

步驟301:在通過靜態(tài)庫或動態(tài)庫的方式調(diào)用所述目標組件的情況下,根據(jù)目標組件的標識信息,從組件配置倉庫中獲取與所述標識信息對應(yīng)的配置文件。

其中,將目標組件集成到應(yīng)用程序中的方式可以包括靜態(tài)庫工程、靜態(tài)庫、動態(tài)庫工程或動態(tài)庫。具體而言,靜態(tài)庫工程可以通過子工程的方式加入到應(yīng)用程序?qū)?yīng)的目標工程中。靜態(tài)庫可以為一些外部函數(shù)和變量的集合體,需要在編譯期間和源代碼連接在一起使用。動態(tài)庫可以在運行時加載使用,不需要在編譯期和源代碼連接在一起。在應(yīng)用程序?qū)?yīng)的目標工程編譯之前,先編譯動態(tài)庫工程,再將生成的靜態(tài)庫加入到應(yīng)用程序?qū)?yīng)的目標工程中使用。本實施例不限制集成方式,可以根據(jù)應(yīng)用程序的開發(fā)情況,采用不同的方式進行集成。靜態(tài)庫和動態(tài)庫都可以實現(xiàn)文件隱藏,可以保護實現(xiàn)特定功能的源代碼。靜態(tài)庫工程和動態(tài)庫工程可以直接在應(yīng)用程序中修改組件代碼,有利于排除程序故障。

在一種可能的實現(xiàn)方式中,如圖4所示,根據(jù)所述配置文件,獲取生成所述目標組件所需要的各待編譯文件(步驟102),具體可以包括:

步驟401:從所述配置文件中,獲取源文件地址,并獲取用于生成所述目標組件所需要的資源文件地址、系統(tǒng)庫地址、靜態(tài)庫地址和動態(tài)庫地址;

步驟402:根據(jù)所述源文件地址,獲取源文件,并分別根據(jù)所述資源文件地址、所述系統(tǒng)庫地址、所述靜態(tài)庫地址和所述動態(tài)庫地址,獲取生成所述目標組件所需要的資源文件、系統(tǒng)庫、靜態(tài)庫和動態(tài)庫。

其中,源文件可以存儲用計算機語言例如C語言、Java語言編寫的代碼。資源文件可以存儲例如圖片、音頻、視頻和文字等資源。系統(tǒng)庫可以指系統(tǒng)自身的庫資源。靜態(tài)庫和動態(tài)庫屬于共享程序代碼的方式。其中,靜態(tài)庫可以編譯到代碼中,組件可以在沒有靜態(tài)庫的環(huán)境中運行;動態(tài)庫不能編譯到代碼中,應(yīng)用程序通常需要在有鏈接庫文件的環(huán)境下運行。

本實施例以下載組件為例進行示例性說明。其中,源文件所記載的代碼可以實現(xiàn)下載功能。資源文件可以為生成下載組件所需要的下載圖標,例如“↓”。系統(tǒng)庫可以為生成下載組件所需要的系統(tǒng)自身的庫資源,例如網(wǎng)絡(luò)通信庫。靜態(tài)庫可以為生成下載組件所需要的第三方靜態(tài)庫,例如微博,微信等用于分享的靜態(tài)庫。動態(tài)庫可以為生成下載組件所需要的第三方動態(tài)庫,例如播放編解碼軟件Fast Forward Mpeg。

Carthage、Cocoapods是兩款較為常用的類庫管理工具,可以通過Carthage或Cocoapods進行組件管理。本實施例以Cocoapods為例進行示例性說明。給出Spec文件的聲明和項目使用的配置文件:

1、根據(jù)CocoaPods設(shè)置Spec文件:

2.根據(jù)CocoaPods設(shè)置描述文件

source"git@git.intra.tudou.com:tudou_ios/tudouspec.git"

pod'TDShareKit’,'0.1.6'

其中,上述Spec文件中設(shè)置有組件名稱TDShareKit,組件版本號0.1.6。根據(jù)source中的git和tag可以得到TDShareKit組件0.1.6版本的git倉庫地址,可以通過source獲取到TDShareKit組件0.1.6版本的全部文件。Platform定義了TDShareKit組件0.1.6版本支持的系統(tǒng)和版本號,例如支持ios系統(tǒng)7.0版本??梢酝ㄟ^resource_bundles定義的路徑獲取資源文件??梢酝ㄟ^source_files定義的路徑獲取源文件??梢酝ㄟ^Frameworks定義的的路徑獲取依賴的系統(tǒng)庫,可以通過Vendored_libraries定義的的路徑獲取依賴的第三方靜態(tài)庫、第三方動態(tài)庫。

在一種可能的實現(xiàn)方式中,如圖5所示,應(yīng)用程序開發(fā)系統(tǒng)中的組件管理方法還可以包括:

步驟104:在所述目標組件生成之后,對所述目標組件的特定功能進行測試,以確定所述目標組件是否能夠?qū)崿F(xiàn)所述特定功能。

例如,可以通過編寫單元測試代碼,對組件提供的公共接口進行測試。

本發(fā)明實施例的應(yīng)用程序開發(fā)系統(tǒng)中的組件管理方法,通過目標組件的標識信息獲取對應(yīng)的配置文件后,通過配置文件可以獲取生成目標組件所需要的各待編譯文件,從而將所獲取的各待編譯文件編譯生成目標組件。在應(yīng)用程序開發(fā)過程中,本發(fā)明實施例的應(yīng)用程序開發(fā)系統(tǒng)中的組件管理方法,可以便捷地重復(fù)調(diào)用實現(xiàn)特定功能的目標組件,提高應(yīng)用程序開發(fā)的效率。

進一步地,本發(fā)明實施例的應(yīng)用程序開發(fā)系統(tǒng)中的組件管理方法,在目標組件生成之后,通過測試以確定目標組件是否能夠?qū)崿F(xiàn)特定功能,可以提高組件的健壯性。

實施例2

圖6示出根據(jù)本發(fā)明一實施例的一種應(yīng)用程序開發(fā)系統(tǒng)中的組件管理裝置的結(jié)構(gòu)框圖。如圖6所示,該應(yīng)用程序開發(fā)系統(tǒng)中的組件管理裝置主要可以包括:第一獲取模塊11,用于根據(jù)目標組件的標識信息,從組件配置倉庫中獲取與所述標識信息對應(yīng)的配置文件。第二獲取模塊13,與所述第一獲取模塊11連接,用于根據(jù)所述配置文件,獲取生成所述目標組件所需要的各待編譯文件。編譯模塊15,與所述第二獲取模塊13連接,用于將所獲取的各待編譯文件編譯生成所述目標組件。具體原理和示例可以參見實施例1以及圖1的相關(guān)描述。

在一種可能的實現(xiàn)方式中,如圖7所示,第二獲取模塊13,包括:地址獲取單元131,用于從所述配置文件中,獲取源文件地址,并獲取用于生成所述目標組件所需要的資源文件地址、系統(tǒng)庫地址、靜態(tài)庫地址和動態(tài)庫地址。文件獲取單元133,與所述地址獲取單元連接,用于根據(jù)所述源文件地址,獲取源文件,并分別根據(jù)所述資源文件地址、所述系統(tǒng)庫地址、所述靜態(tài)庫地址和所述動態(tài)庫地址,獲取生成所述目標組件所需要的資源文件、系統(tǒng)庫、靜態(tài)庫和動態(tài)庫。具體原理和示例可以參見實施例1以及圖4的相關(guān)描述。

在一種可能的實現(xiàn)方式中,第一獲取模塊11,具體用于在通過靜態(tài)庫工程的方式調(diào)用所述目標組件的情況下,根據(jù)目標組件的標識信息,從組件配置倉庫中獲取與所述標識信息對應(yīng)的配置文件;或在通過靜態(tài)庫或動態(tài)庫的方式調(diào)用所述目標組件的情況下,根據(jù)目標組件的標識信息,從組件配置倉庫中獲取與所述標識信息對應(yīng)的配置文件。具體原理和示例可以參見實施例1以及圖2、圖3的相關(guān)描述。

在一種可能的實現(xiàn)方式中,如圖8所示,該應(yīng)用程序開發(fā)系統(tǒng)中的組件管理裝置還可以包括:檢測模塊17,與所述編譯模塊15連接,用于在所述目標組件生成之后,對所述目標組件的特定功能進行測試,以確定所述目標組件是否能夠?qū)崿F(xiàn)所述特定功能。具體原理和示例可以參見實施例1以及圖5的相關(guān)描述。

本發(fā)明實施例的應(yīng)用程序開發(fā)系統(tǒng)中的組件管理裝置,通過目標組件的標識信息獲取對應(yīng)的配置文件后,通過配置文件可以獲取生成目標組件所需要的各待編譯文件,從而將所獲取的各待編譯文件編譯生成目標組件。在應(yīng)用程序開發(fā)過程中,本發(fā)明實施例的應(yīng)用程序開發(fā)系統(tǒng)中的組件管理裝置,可以便捷地重復(fù)調(diào)用實現(xiàn)特定功能的目標組件,提高應(yīng)用程序開發(fā)的效率。

進一步地,本發(fā)明實施例的應(yīng)用程序開發(fā)系統(tǒng)中的組件管理裝置,在目標組件生成之后,通過測試以確定目標組件是否能夠?qū)崿F(xiàn)特定功能,可以提高組件的健壯性。

實施例3

圖9示出根據(jù)本發(fā)明一實施例的一種應(yīng)用程序開發(fā)系統(tǒng)中的組件管理設(shè)備的結(jié)構(gòu)框圖。所述應(yīng)用程序開發(fā)系統(tǒng)中的組件管理設(shè)備1100可以是具備計算能力的主機服務(wù)器、個人計算機PC、或者可攜帶的便攜式計算機或終端等。本發(fā)明具體實施例并不對計算節(jié)點的具體實現(xiàn)做限定。

所述應(yīng)用程序開發(fā)系統(tǒng)中的組件管理設(shè)備1100包括處理器(processor)1110、通信接口(Communications Interface)1120、存儲器(memory)1130和總線1140。其中,處理器1110、通信接口1120、以及存儲器1130通過總線1140完成相互間的通信。

通信接口1120用于與網(wǎng)絡(luò)設(shè)備通信,其中網(wǎng)絡(luò)設(shè)備包括例如虛擬機管理中心、共享存儲等。

處理器1110用于執(zhí)行程序。處理器1110可能是一個中央處理器CPU,或者是專用集成電路ASIC(Application Specific Integrated Circuit),或者是被配置成實施本發(fā)明實施例的一個或多個集成電路。

存儲器1130用于存放文件。存儲器1130可能包含高速RAM存儲器,也可能還包括非易失性存儲器(non-volatile memory),例如至少一個磁盤存儲器。存儲器1130也可以是存儲器陣列。存儲器1130還可能被分塊,并且所述塊可按一定的規(guī)則組合成虛擬卷。

在一種可能的實現(xiàn)方式中,上述程序可為包括計算機操作指令的程序代碼。該程序具體可用于:實現(xiàn)實施例1中各步驟的操作。

本領(lǐng)域普通技術(shù)人員可以意識到,本文所描述的實施例中的各示例性單元及算法步驟,能夠以電子硬件、或者計算機軟件和電子硬件的結(jié)合來實現(xiàn)。這些功能究竟以硬件還是軟件形式來實現(xiàn),取決于技術(shù)方案的特定應(yīng)用和設(shè)計約束條件。專業(yè)技術(shù)人員可以針對特定的應(yīng)用選擇不同的方法來實現(xiàn)所描述的功能,但是這種實現(xiàn)不應(yīng)認為超出本發(fā)明的范圍。

如果以計算機軟件的形式來實現(xiàn)所述功能并作為獨立的產(chǎn)品銷售或使用時,則在一定程度上可認為本發(fā)明的技術(shù)方案的全部或部分(例如對現(xiàn)有技術(shù)做出貢獻的部分)是以計算機軟件產(chǎn)品的形式體現(xiàn)的。該計算機軟件產(chǎn)品通常存儲在計算機可讀取的非易失性存儲介質(zhì)中,包括若干指令用以使得計算機設(shè)備(可以是個人計算機、服務(wù)器、或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各實施例方法的全部或部分步驟。而前述的存儲介質(zhì)包括U盤、移動硬盤、只讀存儲器(ROM,Read-Only Memory)、隨機存取存儲器(RAM,Random Access Memory)、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。

以上所述,僅為本發(fā)明的具體實施方式,但本發(fā)明的保護范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到變化或替換,都應(yīng)涵蓋在本發(fā)明的保護范圍之內(nèi)。因此,本發(fā)明的保護范圍應(yīng)以所述權(quán)利要求的保護范圍為準。

當前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
夏河县| 准格尔旗| 山东省| 分宜县| 类乌齐县| 措美县| 滨州市| 虹口区| 台州市| 南开区| 湛江市| 洪洞县| 普宁市| 乌鲁木齐市| 卫辉市| 闽清县| 荔浦县| 朝阳市| 锡林郭勒盟| 宿松县| 武乡县| 桑植县| 正定县| 巴东县| 彩票| 抚顺市| 汉寿县| 邵东县| 莱西市| 松滋市| 舞阳县| 房产| 永泰县| 德惠市| 合山市| 酉阳| 徐汇区| 六安市| 家居| 沙河市| 宁化县|