1. 程式人生 > >問下這個稽核被拒怎麼解決呢?——酷課堂iOS交流群問答整理(201806期)

問下這個稽核被拒怎麼解決呢?——酷課堂iOS交流群問答整理(201806期)

酷課堂iOS交流群問答整理(201806期)

我們是一個什麼樣的組織:

酷課堂iOS交流群,聚集了一群熱愛技術、有趣、有料,平均Q齡在10年以上的“老司機”,他們遍佈在全國/球各地,有知名企業iOS工程師、高校大學生、自由職業者……如果你也是這樣的人,歡迎加入我們,一起暢聊iOS技術及周邊。

“很乾”

“很佛系”

每晚11點後熄燈(禁言),只聊技術,幾乎不閒聊。

IT從業者自學成功的不少,但從入門到放棄的人更多。一個人走的快,一群人走的遠,希望你會是堅持到最後的那一波,希望我們可以一起相伴走的更遠一些。

付費學員專享福利:

(額外福利,不承諾永久提供!)

1.為了更好的交流,我們開設了QQ群

2.已購買課程的同學,請新增小課微訊號:coolketang001、QQ:3068527144

3.截圖訂單號,即可獲取對應QQ群號,及免費練習原始碼。

(蘋果商店的訂單號,可在購買賬號繫結的郵箱中找到)

1

問題貢獻者:登高望遠

答題大佬:群主 回憶滿滿

請問按視訊打的還是報警,是何原因?

 

didReceiveMemoryWarning方法是Xcode在新建ViewController時自動生成的,不需要手寫,手寫容易出錯。請將didReceiveMemoryWarming修改為didReceiveMemoryWarning,後面的warning錯打為warming了~

十分感謝解答

2

問題貢獻者:김위청

答題大佬:群主

Kingfisher tableview cell

圖片剛載入的時候 出現很多一樣的圖片,然後重新整理一下tableview就沒事,這樣的得怎麼處理?

我是用下面這個方法實現的:
imageView.kf_setImageWithURL(NSURL(string: "your_image_url")!, 
  placeholderImage: nil, 
  optionsInfo: nil, 
  progressBlock: { (receivedSize, totalSize) -> () in 
  println("Download Progress: \(receivedSize)/\(totalSize)") }, 
  completionHandler: { (image, error, imageURL) -> () in 
  println("Downloaded and set!") 
})
作者:smalldu

連結:

https://www.jianshu.com/p/fa2624ac1959 

來源:簡書
簡書著作權歸作者所有,任何形式的轉載都請聯絡作者獲得授權並註明出處。


試試強制重新整理
imageView.kf.setImage(with: url, options: [.forceRefresh])


 

好的,謝謝,可以了,群主,這個強制重新整理是從url裡獲取然後重新整理嗎?還是從cacheKey重新整理?

強制重新整理是從對應key的cache中重新整理的。

3.

問題貢獻者:Rocky

答題大佬:群主

為什麼connection不能選擇?

可能拖動到程式碼區時落點不對

嗯,調好了,謝謝 !

4.

問題貢獻者:風

答題大佬:群主

一直報錯,哪位大神幫忙分析下原因,問題背景:我只要在.m檔案中新增如下程式碼,就會報錯

TVBrandListModel是在.h中定義的

這種問題一般是匯入的第三方類庫不支援arm64,還有一種可能是還需要匯入其它的依賴庫。
有時用這兩種方式也可以解決這個問題:
1、清空Xcode快取檔案(~/Library/Developer/Xcode/DerivedData/)
2、Other Linker Flags增加-ObjC或-lz

5.

問題貢獻者:誠紳

答題大佬:群主

請各位大神,幫忙解決一個專案的技術問題,非常感謝!

Main.storyboard裡面畫的介面,用程式碼不能改變介面的尺寸,這是為什麼?


顏色什麼的是可以改變的
試試在viewDidLayoutSubviews或viewDidAppear中修改介面的尺寸,因為viewDidLoad和viewWillAppear都在viewDidLayoutSubviews

和viewDidAppear的後面。

果然可以,謝謝啦@群主 

6.

問題貢獻者:김위청

答題大佬:群主

一般 iphone 全屏的圖片寬度怎麼設定呀?寬度和高度怎麼設定最好?就是我想填滿全屏,不知道怎麼設定大小是最好的?

我現在使用的contentModelScaleAspectFill

主要設定UIImageView的contentModel屬性,ScaleAspectFit或ScaleAspectFill,具體參考
http://www.cnblogs.com/PLA-Artillery/p/5821818.html 
通過UIScreen可以獲得螢幕的大小

然後把圖片縮小? 對嗎?

 

通過UIScreen獲取螢幕尺寸,然後將UIImageView設定為全屏大小,接著通過設定contentModel使圖片充滿影象檢視。contentModel包含三種屬性參考以下解釋:
Scale To Fill那個圖片顯然一張212*80的圖片要放到100*100的檢視中,要做的就是寬(212)要縮小到100,高(80)要放大到100,有點感覺像把圖片在水平方向擠壓似的。


Aspect Fit 這個圖片顯示真應了fit這個單詞,通過放縮將(212,80)圖片放入(100,100)的View中這個不用說,問題是與上面的放縮不同在於,它的寬高都是使用同一比例,寬212*0.4717=100,與上面不同,高80*0.4717=37.74,所以圖片很真實,儘管縮小了0.4717比率。


Aspect Fill這個就應了Fill單詞了,它和Fit不同,要把小的(也就是高80)放大起到填充的感覺,也就是80*1.25=100那麼我們的寬212,也要乘以1.25=265,最後得到一個(265,100)的圖片,而我們的框框是(100,100),顯然我們的檢視顯示圖片餘地有限,因此只能顯示中間那一部分了。

7.

問題貢獻者:김위청

答題大佬:群主

啟動頁怎麼設定嘛?


和使用正常故事板一樣,新增圖片、文字,新增約束。只是無法新增動畫效果而已。

那不用這個也可以吧?我現在想用launchimage 設定,但是這裡我都設定好了 就是啟動就不顯示圖片

把這個去掉

oK,可以了,另外在請教一下gif圖片怎麼載入 ?
UIImage(named: "no_img") 我的這個no_img 是gif的,但是不顯示這麼寫的話。

 

gif動畫使用UIImage是無法播放的,你可以使用UIWebView或者將gif的幀轉換為圖片序號,然後使用UIImageView播放。或者參考《神兵利器》中的

8.

問題貢獻者:김위청

答題大佬:appleMan

問下這個稽核被拒怎麼解決呢?使用Apple Pay的應用程式必須提供隱私政策,否則將會被拒絕
有知道的同學嗎?


這裡有個隱私政策模板可以參考:
http://www.cnblogs.com/weiboyuan/p/4028690.html 
Apple Pay 安全性與隱私政策概覽
https://support.apple.com/zh-cn/HT203027 

是要給蘋果提供一個隱私政策的連結嗎?
這個是什麼時候開始的?


很早了吧,主要針對 HealthKit,apple key之類的 需要採集使用者資料的app


上個月還正常上線呢,這次居然不行,難道稽核更嚴了?


應該是稽核人員不同造成的


有可能,這個隱私策略是要配置在app還是配置在iTunes,怎麼配置呢?

在一個有效的url上釋出隱私宣告,在Apple connect應用詳情頁--隱私宣告處加上這個連結。
App內也需要找個地方,例如設定頁面、關於頁面放置隱私策略。

這個地方嗎?

恩,這個之前放置的是我們公司的官網,意思是要在我們的官網上面附加一個隱私宣告嗎?

在官網上弄個新頁面,放使用者的隱私政策宣告,然後把頁面的連結放在這裡


 

9.

問題貢獻者:김위청

答題大佬:appleMan

我的這個版本,我上傳了1.71.8的,為什麼這裡不顯示呀?

如果沒有顯示,可能沒有上傳或者上傳失敗,可以重複上傳一次。
 


navigationItem.title. 字型加粗 怎麼設定


參考

https://www.jianshu.com/p/a36d927d2878 


可以了,感謝群主大大!

10.

問題貢獻者:無騖

答題大佬:appleMan

請問,表格的編輯模式怎麼同時進行新增和刪除?
你需要手動編寫程式碼實現一下,比如實現一個自定義的單元格,左面有一個按鈕,點選按鈕時新增或刪除單元格,或者使用第三方

MGSwipeTableCell,給左滑右滑按鈕設定插入和刪除的功能,或其它 自定義的功能。
 

11

問題貢獻者:回憶滿滿

答題大佬:appleMan

哪位高手在啊?關於證書的問題,我今天續費了,有效期還是20187月份,我需要怎麼弄?
重新建立一份證書刪除嗎?

是的已安裝的app不會因為證書問題而無法使用。
我的都沒上商店,每年都過期,哈哈哈~

12

問題貢獻者:王源

答題大佬:appleMan

群主,有沒有iOS開發中如何呼叫介面的案例,使用的是HTTPS傳輸協議

有呼叫http連線的示例,檢視iOS開發從入門到精通的《網路與多執行緒》,或者神兵利器的《Alamofire》那一章,《Swift入門例項教程》的最後一章也有。
https介面可以參考這個:https://www.coolketang.com/iOS/sign_up.json 

Alarmofire的示例程式碼:
func responseJsonHandler()
    {
        Alamofire.request("https://www.coolketang.com/iOS/sign_up.json 

").responseJSON
        { response in
            debugPrint(response)
            
            if let json = response.result.value
            {
                print("JSON: \(json)")
            }
        }
    }



13.

問題貢獻者:zhu

答題大佬:appleMan

swift 是不是不能與c++混編 只能用在.m裡面混編 然後在.swift裡面調.m裡的方法呀?
是的

14

問題貢獻者:王源

答題大佬:appleMan

請問,如何在地圖上如何搞一個三級篩選器,有資料介面過來的那種

使用多個UITableView或UIPickerView製作級聯選單,然後放在地圖檢視的上方。當一個選項被點選時,重新整理下一個級別選項的內容。

有例子可以參考一下麼

 

https://www.jianshu.com/p/c806f8acea59 
http://www.cocoachina.com/ios/20150626/12264.html

15

問題貢獻者:王源

答題大佬:appleMan

有大佬知道這是什麼情況?

使用的是哪個第三方類庫 ?

類似的問題參考:
https://ai.baidu.com/forum/topic/show/497335 
https://stackoverflow.com/questions/47802071/xcode-9-ios-11-boringssl-ssl-error-zero-return 

16

問題貢獻者:風

答題大佬:群主

自定義藍色檢視(Custom.xib,以灰色view為參照,設定自定義藍色viewframeframe總對應不上,求大神指點一二
 

實現細節如下:
 

如果使用約束的話,你是使用程式碼進行約束的,還是在xib中新增約束的?如果沒有使用約束,而是使用程式碼計算frame的話,直接設定藍色view的frame和深灰色的frame相同即可。

17

問題貢獻者:網易4

答題大佬:群主

我這個oc檔案無法倒錄。都安裝了,奇怪的是上面的不加 "" 這個符號可以。加符號的話不行@群主,可以幫我看下嗎?

這麼寫就是下面這個出錯
直接匯入NIMKit.h試試

@群主。這樣都不行了

你下載這個demo,看demo是怎麼匯入的
好的,我知道了,謝謝!

18

問題貢獻者:zhu

答題大佬:群主

@群主請問一下 伺服器返回的視訊連結沒有.mp4 用瀏覽器下載下來是.dms的請問 怎麼當成視訊播放呢?

確認是dms格式嗎?swift可以播放mp4或者流內容,dms的不清楚,需要和伺服器那邊聯絡吧,約定好視訊的格式。


嗯,好的檔案下載下來是這種
 

19.

問題貢獻者:zhu

答題大佬:群主
求高手指點,主介面tabbar有有四個tabItem,即對應四個頁面,我點選其中一個tabItem對應的頁面中的UIbutton跳轉到其他頁面
使用的以下語句
self.present(SixteenthViewController(), animated: true, completion: nil)
可是當我再跳轉回到主介面時,tabbar自己消失了
用了下面的語句也沒有用
        ViewController().tabBarController?.hidesBottomBarWhenPushed = false


將ViewController.swift中的self.present(FirstSubViewController(), animated: true, completion: nil)修改為:

self.dismiss(animated: true, completion: nil)即可。
原因是原來的程式碼是新建一個新的檢視控制器,並以模態的方式開啟新的檢視控制器,並沒有返回tab bar controller。所以tab bar 並沒有消失,只是沒有返回初始檢視控制器。使用dismiss方法可以返回初始檢視控制器。


好的,謝謝群主



20.

問題貢獻者:網易4

答題大佬:群主

@群主 im即時通訊 哪個第三方好?

即時通訊第三方有很多:
https://leancloud.cn/docs/chatkit-ios.html 
https://cloud.tencent.com/product/im 
雲通訊IM

https://cloud.tencent.com/product/im 

21

問題貢獻者:王源答題大佬:群主
求助,像是這種UI介面該如何實現,就是可以在頂部還可以進行左右滑動的

上面的最新、排行榜使用UIButton實現,並放置在UIScrollView中。
下面的滾動廣告使用UIScrollView實現,並設定pageEnabled屬性為true。

22.

問題貢獻者:網易4

答題大佬:群主

視訊載入速度 特別慢 有什麼好的辦法嗎?

1、提升視訊所在伺服器的頻寬
2、降低視訊的解析度,壓縮視訊的體積
3、將視訊的https連結修改為IP連結,避免域名解析的時間
4、將視訊檔案放在七牛等第三方平臺統一管理

降低視訊的解析度 有參考嗎?我的是現在儲存在自己的伺服器上,有沒有程式碼壓縮的方法?


參考

https://zh.wikihow.com/%E5%8E%8B%E7%BC%A9%E8%A7%86%E9%A2%91 
也可以線上壓縮:

https://www.shipinyasuo.com/ 

沒有壓縮視訊的程式碼,自己寫的話可以參考http://www.111cn.net/sj/iOS/111940.htm 

我明白了 ,很全面,謝謝群主。


23.

問題貢獻者:網易4

答題大佬:群主

群主,我們教程的最後一節課,32.專案的打包上傳和提交稽核,在設定應用程式的開發證書時,我彈出的證書列表是Automatic,點選other 後是空的,與您教程中的不一樣,如何解決?謝謝!

教程中是這樣的,列出了所有的開發證書和釋出證書

需要登入http://developer.apple.com/ 

然後建立開發證書和釋出證書,具體步驟請參考我的新書中的這些章節:

 

謝謝群主!我試試。您新書書名?我想買

多謝支援,第一版已經沒貨了,第二版書稿已經發給清華大學出版社,應該還需要兩個月才能上市. 書名是:iOS移動開發從入門到精通第二版

24.

問題貢獻者:網易4

答題大佬:群主 Demonァ淺唱 

tabbar 新增提示數字 然後 怎麼實施改變呀?


繼續設定badgeValue的值即可。
let tabBar = tabViewController.tabBar
let item = tabBar.items![0]
item.badgeValue = "5"

@群主,這個想隨時監聽,就是伺服器有提醒資料的時候,實施改變的話,得在哪裡設定呀?

有幾種方式,一種是使用Push,蘋果的或第三方的都可以。還可以使用基類,在該基類的viewWillAppear中新建一個執行緒查詢資料是否有變化,然後tab view controller中的子控制器都繼承這個基類。

我的現在是baseviewcontroller是所有控制機都繼承的,我是不是在,這個控制器的viewvillappear中,建立一個執行緒?

是的當收到資料變化提醒時,判斷當前的tab bar item不為空的情況下返回主執行緒修改badgeValue

@群主 我大概明白了 謝謝群主 

這是什麼錯誤呀 是我哪個地方寫錯了嘛?
可選繫結,就把感嘆號改成疑問號

可以了,謝謝兩位大神助力@群主@ Demonァ淺唱 

 

一些實用小技巧分享:

(當然也包括小夥伴們剛踩過的坑; )

1.分享人:其樂無窮 

有沒有已經從事 iOS開發在公司裡的大神,能講進公司的面試是什麼樣的,求教?

面試了10名開發者後,總結了50道iOS面試題[https://www.jianshu.com/p/79c9a8b9b313 


2.分享人:appleMan

剛剛踩坑:iOS12 beta 版閃退(使用友盟分享SDK6.8.0和統計版本5.4.0時必現的閃退)
解決問題:請更新最新包

3.分享人:TachibanaHotaru
Swift 5 will be released in early 2019 https://github.com/apple/swift-evolution/commit/de7727f7dcf7bbfdea6763a87f4c8c534f27406e 


 

4.上傳App Store被拒絕(用prefs:root,使App跳轉至設定介面)。以前上傳都沒影響,這次突然不行了,諮詢各位大神有替代方案沒

 

這裡有解決方案

https://community.apicloud.com/bbs/thread-89207-1-1.html 
 

5.現在是主要便用oc還是swift開發啊?以及java開發初學iOS應該怎麼入門和進階?

swift也學了,語法都還好,但是看一些案例大多數都是oc,所以現在又在學oc了。

Swift開發是趨勢,由於在Swift之前已經有大量的iOS開發者,所以目前基本上還是OC和Swift並存的局面。

java開發入門Swift會比較快些,先學習一下Swift語法和iOS日常開發技能,然後再做些例項,通過實戰才能真正提高iOS開發技能。


6.咱們的swift教程和Xcode9教程做的很好。在有Objective-C開發經驗的情況下,兩週時間就全部學完了。很棒

有Objective-C開發經驗,的確上手會快很多,但是小白也可以一點點精進,畢竟誰也不是生來就掌握各種技能的。

以上內容由@客服妹子爬樓整理,希望小夥伴的這些提問,對你有幫助/啟發,感謝資源貢獻者:Mi~、appleMan、賴著、蔣哥、Rocky、群主、誠紳、思、其樂無窮、Demonァ淺唱 、김위청、回憶滿滿、風、zhu王源,精選在此,喜歡請收藏,給答題的各位大佬點贊!

酷課堂iOS交流群,聚集了一群熱愛技術、有趣、有料,平均Q齡在10年以上的“老司機”,他們遍佈在全國/球各地,有知名企業iOS工程師、高校大學生、自由職業者……如果你也是這樣的人,歡迎加入我們一起暢聊iOS技術及周邊。

聯絡我們:

網站:coolketang.com

微信公眾號:酷課堂

微信:coolketang001、

郵箱:[email protected]

QQ:3068527144

閱讀原文

https://mp.weixin.qq.com/mp/qrcode?scene=10000004&size=102&__biz=MzIzODI5NTE1OQ==&mid=2649141759&idx=1&sn=a1501e8aabf7f1a16c73ce01c6c5ccaf&send_time=

微信掃一掃
關注該公眾號