實現登入註冊的基本功能,沒有新增手機驗證和郵箱驗證的功能,有相應的方法,如果需要,可以自己加上其相應的方法
github的**:
1.匯入leancloud相應的第三方,這個等我再寫乙個部落格告訴大家怎麼用,leancloud的官方文件也都有寫,****:
3.當你布置好頁面以後,我的習慣先寫註冊功能,先建立乙個使用者**user
//4.註冊成功的話,要呼叫登入的方法1.建立乙個使用者
**user *user =[**user user];
user.username =username;
user.password =password;
//2.註冊的方法
[user signupinbackgroundwithblock:^(bool succeeded, nserror *error)
else
}];
//5.基本功能完成了,開始解決問題1.登陸的方法
[**user loginwithusernameinbackground:username password:password block:^(**user *user, nserror *error)
else
}];
1)不能每次都讓你的使用者登入,如果之前登入了,再次啟動時不用使用者再次登入,寫乙個判斷方法,之前用block**通知是否登入了,
isloginblock(yes);
isloginblock(no);2)知道是否登入後,需要知道使用者名稱和密碼和使用者id讓他自動登入,所以之前應該保證到本地資料
//3)如果block的結果是yes,就當本地取資料,之後更換你的根檢視把資訊存在本地
nsuserdefaults *defaults =[nsuserdefaults standarduserdefaults];
//存放
[defaults setobject:user.username forkey:@"
username"];
[defaults setobject:user.objectid forkey:
@"objectid"];
[defaults setobject:user.password forkey:
@"password"];
[defaults setobject:
@"yes
" forkey:@"
islogin
"];
//4)如果block的結果是no,根檢視就是登入頁面在本地取
nsuserdefaults *userdegaults =[nsuserdefaults standarduserdefaults];
//就是之前登陸了
if ([[userdegaults objectforkey:@"
islogin
"] isequaltostring:@"
yes"
]) {
[usermanager shareuser].username = [userdegaults objectforkey:@"
username"];
[usermanager shareuser].password = [userdegaults objectforkey:@"
password"];
[usermanager shareuser].userid = [userdegaults objectforkey:@"
objectid"];
rootviewcontroller *rootvc =[[rootviewcontroller alloc] init];
self.window.rootviewcontroller = rootvc;
miaomiaocat小語
寬依賴與窄依賴
1 寬依賴 英文全名 shuffledependency。本質如其名,就是shuffle。每乙個父rdd的partition中的資料,都可能會傳輸一部分,到下乙個rdd的partition中,此時會出現,父rdd和子rdd的partition之間,具有交錯複雜的關係。那麼這兩個rdd之間就是寬依賴,...
Spark寬依賴與窄依賴的區別
窄依賴是指父rdd的每個分割槽只被子rdd的乙個分割槽所使用,子rdd分割槽通常對應常數個父rdd分割槽。這其中又分兩種情況 1個子rdd分割槽對應1個父rdd分割槽 如map filter等運算元 1個子rdd分割槽對應n個父rdd分割槽 如co paritioned 協同劃分 過的join 寬依...
寬依賴與窄依賴區別
寬依賴與窄依賴區別 窄依賴 narrow dependencies 子rdd的每個分割槽依賴於常數個父分割槽 與資料規模無關 輸入輸出一對一的運算元,且結果rdd的分割槽結構不變。主要是map flatmap 輸入輸出一對一的運算元,但結果rdd的分割槽結構發生了變化,如union coalesce...