無標(biāo)題文章

[更新日志][1]? [1]: https://blog.growingio.com/posts/iOS_changelog## 1. 選擇 SDK 安裝方式 請確保您的 XCode 版本為 7.3 或者其后的版本。 GrowingIO 支持兩種 iOS SDK 安裝方式: A. 使用 CocoaPods 管理依賴? 1. 添加 `pod 'GrowingIO'` 到 Podfile 中;? 2. 執(zhí)行 `pod update`,**不要用`--no-repo-update`選項**;? 3. 直接進入**安裝文檔的第五步**;B. 手動安裝依賴? 1. 點擊[![][2]][3]下載 iOS SDK? 2. 進行安裝文檔的第二步? [2]: https://growing.ufilesec.ucloud.cn/sdk/download-icon-ios.svg? [3]: http://growing.ufile.ucloud.cn/sdk/GrowingIO-iOS-SDK.zip## 2. 導(dǎo)入 SDK 按照以下步驟將SDK導(dǎo)入到您的項目中。? 1. 解壓 iOS SDK 壓縮文件;? 2. 添加 Growing.h 和 libGrowing.a 添加到您的 iOS 工程中;提醒:? * 記得勾選 "Copy items if needed"## 3. 添加依賴 在您的工程項目中添加依賴 庫名稱說明Foundation.framework 基礎(chǔ)依賴庫 Security.framework 用于APP連接圈選頁面SSL連接 CoreTelephony.framework 用于讀取運營商名稱 SystemConfiguration.framework 用于判斷網(wǎng)絡(luò)狀態(tài) libicucore.tbd 用于APP連接圈選頁面解析 libsqlite3.tbd 存儲日志 CoreLocation.framework 用于讀取地理位置信息(如果您的app有權(quán)限) 提醒:? * 添加項目依賴庫的位置在 項目設(shè)置target -> 選項卡General -> Linked Frameworks and Libraries## 4. 添加編譯參數(shù) 在您的工程項目中添加編譯參數(shù)? 1. 找到 Linking 設(shè)置? 2. 在 Other Linker Flags 中添加 -ObjC 參數(shù),請注意大小寫提醒:? * Linking 設(shè)置位于 項目設(shè)置 target -> 選項卡 Build Settings,左上角選擇 All。## 5. 添加初始化函數(shù) 在 AppDelegate 中引入`#import "Growing.h"`并添加啟動方法? ? ? ? - (BOOL)application:(UIApplication *)application? ? ? ? didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {? ? ? ? ? ...? ? ? ? ? // 啟動GrowingIO? ? ? ? ? ? ? [Growing startWithAccountId:@"0a1b4118dd954ec3bcc69da5138bdb96"];? ? ? ? ? // 其他配置? ? ? ? ? // 開啟Growing調(diào)試日志 可以開啟日志? ? ? ? ? // [Growing setEnableLog:YES];? ? ? }請確保將代碼添加在上面描述的位置,添加到其他函數(shù)中或者異步 block 中可能導(dǎo)致數(shù)據(jù)不準確。## 6. 添加URL Scheme 把 URL Scheme 添加到您的項目,以便我們喚醒您的程序,進行圈選。 URL Scheme 獲取方式有兩種 1. 添加新產(chǎn)品:登錄官網(wǎng) -> 點擊新建,選擇添加新產(chǎn)品 -> 選擇添加 iOS 應(yīng)用 -> 在第二段“添加 URL Scheme ”中標(biāo)黃字體。 2. 現(xiàn)有產(chǎn)品:登錄官網(wǎng) -> 右上角點擊用戶頭像 -> 點擊“項目管理” -> 點擊左側(cè)的“應(yīng)用管理” -> 找到對應(yīng)產(chǎn)品的 URL Scheme。 URL Scheme 的格式是 growing.xxxxxxxxxxxxxxxx。? 1. 添加您的 URL Scheme(growing.xxxxxxxxxxxxxxxx)到項目中,URL Scheme 位于項目設(shè)置 target -> 選項卡 Info -> URL Types;? 2. 在 AppDelegate 中調(diào)用函數(shù) [Growing handleUrl:] 來接收 URL? ? ? ? - (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation? ? {? ? ? ? if ([Growing handleUrl:url])? ? ? ? {? ? ? ? ? ? return YES;? ? ? ? }? ? ? ? ...? ? ? ? return NO;? ? }提醒:? * 如果您的 AppDelegate 中,實現(xiàn)了其中一個或者多個方法,請在已實現(xiàn)的函數(shù)中,調(diào)用 `[Growing handleUrl:]`:? ? ? ? - (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(nullable NSString *)sourceApplication annotation:(id)annotation? ? - (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url? ? - (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary*)options

* 如果以上所有函數(shù)都未實現(xiàn),則請實現(xiàn)以下方法并調(diào)用 `[Growing handleUrl:]`:

- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(nullable NSString *)sourceApplication annotation:(id)annotation

* 實際情況可能很復(fù)雜,請在調(diào)試時確保函數(shù) `[Growing handleUrl:]` 會被執(zhí)行到

### 下方各個配置項將影響統(tǒng)計的準確性,請務(wù)必仔細閱讀,判斷是否需要

## 7. 重要配置項

### 設(shè)置界面元素ID

當(dāng)您的應(yīng)用界面改版時,可能會導(dǎo)致無法準確地統(tǒng)計已經(jīng)圈選的元素。

因此,對于應(yīng)用中的主要流程涉及到的界面元素,建議您對它們設(shè)置固定的唯一ID,以保證數(shù)據(jù)的一致性。

具體要求

1. 主要流程指的是登錄、注冊、購買、發(fā)帖等操作步驟。

2. 設(shè)置ID的對象是界面的重要按鈕等元素,如“注冊”、“結(jié)算”、“發(fā)布”按鈕。

3. 設(shè)置ID的方法如下:

(1)接口

@interface UIView(GrowingAttributes)

@property (nonatomic, copy)? NSString* growingAttributesUniqueTag;

@end

(2)代碼寫法:請加在viewWillAppear或者時機更早的函數(shù)里。

-(void)viewWillAppear

{

UIView * MyView;

MyView.growingAttributesUniqueTag = @"my_view”;

}

(3)ID只能設(shè)置為字母、數(shù)字和下劃線的組合。

(4)對于已經(jīng)集成過舊版SDK并圈選過的應(yīng)用,對某個元素設(shè)置ID后再圈選它,指標(biāo)數(shù)值會從零開始計算,類似初次集成SDK后發(fā)版的效果,但不影響之前圈選的其它指標(biāo)數(shù)據(jù)。如果不希望出現(xiàn)這種情況,請不要使用這個方法。

### 采集廣告Banner數(shù)據(jù)

很多應(yīng)用上方都有橫向滾動的Banner廣告。

對于這樣的廣告,如果要收集數(shù)據(jù),請在響應(yīng)點擊的控件上添加如下代碼

UIView *view;

view.growingAttributesValue = 廣告的唯一ID;

其中view是您的廣告元素,請確保兩點:

1. 對不同廣告圖,廣告的唯一ID也不相同。

2. 響應(yīng)點擊的控件,與設(shè)置ID的控件是同一個

例如,當(dāng)您的橫向滾動廣告共有3張廣告圖時,您可以在3個響應(yīng)點擊的View上分別設(shè)置不同的廣告唯一ID,類似如下效果:

view1.growingAttributesValue = @“ad1”;

view2.growingAttributesValue = @“ad2”;

view3.growingAttributesValue = @“ad3”;

此外,當(dāng)您想采集一些可能沒有文字的控件(比如UIImageView,UIView)時,也可以給屬性growingAttributesValue賦值作為文字,用來在圈選的時候區(qū)分不同的內(nèi)容。

### 頁面別名

對于iOS應(yīng)用,頁面指的是`UIViewController`。

有些時候,對于完成某個功能的頁面,統(tǒng)計時可能需要進一步細分。 比如,對于展示商品列表的頁面,需要區(qū)分衣物類商品,以及食品類商品的兩種列表的訪問量。

為處理這種場景,我們提供了取別名的方法來區(qū)分這兩種情況下的頁面,接口如下:

@interface UIViewController(GrowingAttributes)

@property (nonatomic, copy)? NSString* growingAttributesPageName;

@end

**我們舉例來具體說明它的用法。**

1. 某個應(yīng)用的商品列表頁是用`ListViewController`實現(xiàn)的,所以默認的頁面名稱都是`ListViewController`。

2. 如果想?yún)^(qū)分衣物類商品列表和食品類商品列表,分別看它們的瀏覽量,可以這樣做:

//ListViewController類的實現(xiàn)文件

-(void)viewWillAppear

{

if (展示衣物類商品)

{

self.growingAttributesPageName = @"衣物商品列表";

}

else if (展示食品類商品)

{

self.growingAttributesPageName = @"食品商品列表";

}

}

請注意

1. 必須在該 UIViewController 的 viewWillAppear 或者更早時機的函數(shù)中完成該屬性的賦值操作。

2. 頁面別名只能設(shè)置為字母、數(shù)字和下劃線的組合。

3. 為查看數(shù)據(jù)方便,請盡量對iOS和安卓的同功能頁面取不同的名稱。

### 采集輸入框數(shù)據(jù)

如果您需要采集應(yīng)用內(nèi)某個輸入框內(nèi)的文字(例如搜索框),請調(diào)用如下接口進行設(shè)置

`UIView * view; // view可以是UITextField, UITextView, UISearchBar ... view.growingAttributesDonotTrackValue = NO;`

其中,view代表要被采集的輸入框。 當(dāng)這個輸入框失去焦點(包括應(yīng)用退到后臺),且輸入框內(nèi)容跟獲取焦點前相比發(fā)生變化時,輸入框內(nèi)文字會被發(fā)送回GrowingIO。 請注意:對于密碼輸入框,即便標(biāo)記為需要采集,SDK也會忽略,不采集它的數(shù)據(jù)。

### Facebook廣告SDK

如果使用了Facebook廣告SDK,請務(wù)必添加以下代碼來避免沖突,否則可能造成無法創(chuàng)建項目或者統(tǒng)計準確性問題。

請在main函數(shù)第一行調(diào)用下方函數(shù)。APP啟動后,將不允許修改采集模式。

`[Growing setAspectMode:GrowingAspectModeDynamicSwizzling]`

### 采集H5頁面數(shù)據(jù)

會自動采集H5頁面的數(shù)據(jù),不需要特殊配置。

### 采集GPS數(shù)據(jù)

如果您的應(yīng)用有相應(yīng)權(quán)限,我們將自動采集您的GPS數(shù)據(jù)。

## 8. 其他配置項

### 自定義維度

GrowingIO的數(shù)據(jù)分析工具提供了例如“應(yīng)用版本”,“渠道”,“城市”,“設(shè)備型號”等等這些通用維度。但在使用過程中,有時無法滿足用戶對特定數(shù)據(jù)維度的分析要求。

為了能夠讓數(shù)據(jù)分析變得更加的靈活,我們提供了自定義維度的接口,使用者可以對各種對象設(shè)置屬性。

**這些屬性在作圖時,將表現(xiàn)為維度。**

#### 用戶屬性

用戶屬性只能用來表示登錄用戶本身的屬性,至少包括用戶ID。

根據(jù)需求,可以用來指定用戶的各種屬性 1. 自然屬性,比如性別、出生年月等。 2. 賬戶屬性,比如等級、類型標(biāo)簽等。 3. 行為特征,比如是否有過購買記錄之類。

用戶屬性被稱為CS字段,最多支持十個,從CS1到CS10。

**我們舉例說明它的用法。**

總計上傳5個用戶屬性,分別是

CS1: user_id:100324

CS2: company_id:943123

CS3: user_name:張溪夢

CS4: company_name:GrowingIO

CS5: sales_name:銷售員小王

用戶可以填入自定義的數(shù)據(jù),該數(shù)據(jù)不會持久化,在數(shù)據(jù)變化的時候填入即可

-(void)someMethod

{

[Growing setCS1Value:@"100324" forKey:@"user_id"];

[Growing setCS2Value:@"943123" forKey:@"company_id"];

[Growing setCS3Value:@"張溪夢" forKey:@"user_name"];

[Growing setCS4Value:@"GrowingIO" forKey:@"company_name"];

[Growing setCS5Value:@"銷售員小王" forKey:@"sales_name"];

}

**CS字段設(shè)置條件和限制**

1. CS 字段不能是和用戶沒有直接關(guān)系的屬性,比如不能是訂單 ID,商品 ID 等。

2. CS1 字段:在 GrowingIO 系統(tǒng)中用于識別注冊用戶的身份,因此 CS1 的 value 必須填寫用戶的唯一身份標(biāo)示 ID。

3. CS2 字段:在 GrowingIO 系統(tǒng)中用于識別 SaaS 客戶的租戶,因此所有的 SaaS 用戶必須填寫租戶的唯一身份標(biāo)示 ID,非 SaaS 用戶不做限定。

4. 對于未登錄用戶,不要設(shè)置任何CS字段。

5. 如果沒有用到所有的CS字段,剩下的可以不設(shè)置。

6. 同一個CS字段,必須保持在各個平臺意義相同。

##### 對于CS1字段設(shè)置時機的說明

基本原則

1. 當(dāng)App使用者的登錄狀態(tài)改變時設(shè)置CS1字段的值

2. 設(shè)置后,在下一次任意`viewDidAppear`被調(diào)用時,新的CS1字段的值才會被發(fā)送

3. 在CS1字段的值被發(fā)送前,重復(fù)設(shè)值會導(dǎo)致新的值取代舊的,舊值會被丟棄

用戶手動登錄 1. 如果有多個登錄入口,在每一個入口登錄成功后,都需要調(diào)用`[Growing setCS1Value:forKey:]`來設(shè)置用戶的唯一標(biāo)識。 2. 如果有第三方登錄,成功登錄后需要調(diào)用`[Growing setCS1Value:forKey:]`方法。

自動登錄:App啟動時,自動登錄或者用戶默認是登錄狀態(tài),也需要調(diào)用`[Growing setCS1Value:forKey:]`方法

注冊:有的App注冊成功后,默認登錄,這種情況下也需要調(diào)用`[Growing setCS1Value:forKey:]`方法。

退出:退出登錄時,需要把CS1字段置空,傳`””`或者`nil`都可以。

**其他CS字段遵循相似的設(shè)置方法**

**在上傳成功兩小時后,您需要在「項目管理-項目配置-CS 配置中」進行字段配置和激活,配置成功后便可開始使用 CS 字段進行分析。配置過程請參考 [屬性數(shù)據(jù)(CS)上傳配置文檔][4]。**

[4]: https://docs.growingio.com/attribution-data.html

#### 頁面屬性

在iOS應(yīng)用中,頁面指的是`UIViewController`。

對于完成多個功能的`UIViewController`(比如商品詳情頁),您可以給不同功能分別設(shè)置不同的`growingAttributesPageGroup`,用來輔助區(qū)分頁面。

頁面屬性被稱為PS字段,每個PageGroup最多支持10個PS字段,從PS1到PS10,接口如下:

@interface UIViewController(GrowingAttributes)

@property (nonatomic, copy) NSString* growingAttributesPageGroup;

@property (nonatomic, copy) NSString* growingAttributesPS1;

@property (nonatomic, copy) NSString* growingAttributesPS2;

@property (nonatomic, copy) NSString* growingAttributesPS3;

@property (nonatomic, copy) NSString* growingAttributesPS4;

@property (nonatomic, copy) NSString* growingAttributesPS5;

@property (nonatomic, copy) NSString* growingAttributesPS6;

@end

創(chuàng)建`growingAttributesPageGroup`的個數(shù)不限。

**我們以商品詳情頁為例詳細說明它的用法。**

您可以將商品的類別,尺碼、顏色、生產(chǎn)廠商等信息設(shè)置為PS字段,從而更加靈活的分析用戶行為。

如,定義產(chǎn)品詳情頁“Clothing”為一個`growingAttributesPageGroup`,并上傳4個頁面屬性,分別是:

PS1:商品ID:1234567

PS2:商品名稱:運動T-shirt

PS3:商品尺碼:M

PS4:商品顏色:藍色

// UIViewController 的子類實現(xiàn)文件中

-(void)viewWillAppear

{

[super viewWillAppear];

self.growingAttributesPageGroup = @"Clothing";

}

...

// 數(shù)據(jù)請求完畢之后將數(shù)據(jù)設(shè)置到PS屬性中

- (void)xxxxxxxxxxxxxxx

{

self.growingAttributesPS1 = @"1234567";

self.growingAttributesPS2 = @"運動 T-shirt";

self.growingAttributesPS3 = @"M";

self.growingAttributesPS4 = @"藍色";

}

**PS字段設(shè)置條件和限制**

1. `setGrowingAttributesPageGroup`接口必須在`UIViewController`的`viewWillAppear`方法中調(diào)用

2. `growingAttributesPageGroup`只能設(shè)置為字母、數(shù)字和下劃線的組合。

3. 請務(wù)必設(shè)置`growingAttributesPageGroup`后再設(shè)置各個PS字段

4. 如果沒有用到所有的PS字段,剩下的可以不設(shè)置。

5. 如果對同一頁面的同一PS字段連續(xù)設(shè)置多次,則只保留最后一次設(shè)置的值

6. 除了頁面本身外,在商品詳情頁上面所有的界面元素的行為,包括瀏覽和點擊等,都會和這些頁面屬性建立關(guān)聯(lián)。

**在上傳成功之后,請聯(lián)系在線客服,我們會為您配置并且激活相應(yīng)的屬性字段。**

### 設(shè)置元素對象

如果元素自身的內(nèi)容并不能代表具體的意義,可以使用元素對象來標(biāo)識。

例如“加入購物車”按鈕,可以設(shè)置成加入購物車的具體商品名稱或ID。

UIView * view;

...

view.growingAttributesInfo = "The New iPad";

### 忽略某元素

UIView * view;

...

view.growingAttributesDonotTrack = YES;

其中,view是您需要忽略的元素。

### 自定義數(shù)據(jù)接收服務(wù)器

GrowingIO SDK 支持自定義行為數(shù)據(jù)接收服務(wù)器,用戶可以選擇數(shù)據(jù)先采集到自己的服務(wù)器做一些處理(比如審計)然后轉(zhuǎn)發(fā)到 GrowingIO 服務(wù)器。詳情參見 [CustomTrackerHost][5]

[5]: ../Features/CustomTrackerHost.html

* * *

至此,您的SDK安裝就成功了。您登錄 GrowingIO 進入產(chǎn)品安裝頁面執(zhí)行“數(shù)據(jù)檢測”幾分鐘后就可以看到數(shù)據(jù)了。

您可以在您的App中激活GrowingIO的SDK,并且進行數(shù)據(jù)定義。具體的激活以及數(shù)據(jù)定義的方法,請查看 [3.3.2移動端直接定義][6]

[6]: https://docs.growingio.com/Features/circle/appcirclingapp_new.html

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 229,885評論 6 541
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 99,312評論 3 429
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 177,993評論 0 383
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,667評論 1 317
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 72,410評論 6 411
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 55,778評論 1 328
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,775評論 3 446
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 42,955評論 0 289
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 49,521評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 41,266評論 3 358
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,468評論 1 374
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,998評論 5 363
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 44,696評論 3 348
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,095評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,385評論 1 294
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,193評論 3 398
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 48,431評論 2 378

推薦閱讀更多精彩內(nèi)容

  • # 一度蜜v3.0協(xié)議 --- # 交互協(xié)議 [TOC] ## 協(xié)議說明 ### 請求參數(shù) 下表列出了v3.0版協(xié)...
    c5e350bc5b40閱讀 660評論 0 0
  • 轉(zhuǎn)至元數(shù)據(jù)結(jié)尾創(chuàng)建: 董瀟偉,最新修改于: 十二月 23, 2016 轉(zhuǎn)至元數(shù)據(jù)起始第一章:isa和Class一....
    40c0490e5268閱讀 1,755評論 0 9
  • WebView·開車指南 2016-08-31BugDev 北京市東城區(qū)首席Bug布道師開山之作,一整月交通事故血...
    53c021c38a1d閱讀 847評論 0 1
  • 你扛著鋤頭,我背著背婁,他提著籃子,我們一起爬上對面的小山坡。 洋洋灑灑的光,惠風(fēng)和暢。躬腰、鋤地。一遍遍地將泥土...
    老tan子閱讀 297評論 0 1
  • 小A最近在交朋友方面有很多問題,對于朋友的定義,小A一直是秉持合則來,不合則散的態(tài)度。為什么吶?就是覺得沒有必要,...
    三言兩二拍閱讀 228評論 0 0