[iOS] 支援多語系 App 名稱
正在開發跨國使用的iOS App,所以App名稱最好也能跟著變更,來讓當地使用者看到App名稱更輕易地辨識。
![[iOS] 支援多語系 App 名稱1](https://cg2010studio.com/wp-content/uploads/2017/11/ios-e694afe68fb4e5a49ae8aa9ee7b3bb-app-e5908de7a8b11.png?w=540)
可以見到我的Info.plist檔中有五處是中文字,想要多國語言化可以怎麼做?其實也跟幾年前我寫的多國語言化很類似,參考文章:多國語系 (Localization)。
正在開發跨國使用的iOS App,所以App名稱最好也能跟著變更,來讓當地使用者看到App名稱更輕易地辨識。
![[iOS] 支援多語系 App 名稱1](https://cg2010studio.com/wp-content/uploads/2017/11/ios-e694afe68fb4e5a49ae8aa9ee7b3bb-app-e5908de7a8b11.png?w=540)
可以見到我的Info.plist檔中有五處是中文字,想要多國語言化可以怎麼做?其實也跟幾年前我寫的多國語言化很類似,參考文章:多國語系 (Localization)。
三年後,再次使用Admob放廣告,SDK有不少更新,有多兩個廣告可供選擇,現在共有四種廣告,可依據使用者介面來顯示。
原以為整合失敗,因為輸入自己申請到的廣告ID,出現No ad to show的訊息,查明後才知道,要先在後台完成付款資訊,廣告才會正常發送!
接下來就是送審上架!
開始要製作免費版的APP,因為是在沒有人贊助的情況下來開發,為了有些許微薄的收入,決定在APP中內嵌入廣告,查詢過網路上有經驗的開發者的文章,發現使用AdMob行動廣告是較有益處!因為它已被Google給買下來⋯⋯此教學是使用AdMob SDK 6.8.0。
AdMob後台可以設定廣告背景和文字的顏色,因為我要測試效果,所以就從預設黑色設定為亮粉色囉!
View original post 詳見內文:約59字
這次要串接的Web Service是使用Basic Authentication,是我公司資深工程師所用的認證方式,我之前都是取得伺服器回傳的Token來做之後API呼叫的「令牌」。學一下Basic Authentication也不錯啦~
WiKi這麼描述HTTP基本認證:
在HTTP中,基本認證(Basic access authentication)是一種用來允許網頁瀏覽器或其他用戶端程式在請求時提供使用者名稱和口令形式的身分憑證的一種登入驗證方式。
在傳送之前是以使用者名稱追加一個冒號然後串接上口令,並將得出的結果字串再用Base64演算法編碼。例如,提供的使用者名稱是Aladdin、口令是open sesame,則拼接後的結果就是Aladdin:open sesame,然後再將其用Base64編碼,得到QWxhZGRpbjpvcGVuIHNlc2FtZQ==。最終將Base64編碼的字串傳送出去,由接收者解碼得到一個由冒號分隔的使用者名稱和口令的字串。
雖然對使用者名稱和口令的Base64演算法編碼結果很難用肉眼識別解碼,但它仍可以極為輕鬆地被電腦所解碼,就像其容易編碼一樣。編碼這一步驟的目的並不是安全與隱私,而是為將使用者名稱和口令中的不相容的字元轉換為均與HTTP協定相容的字元集。
現在相機與相簿 (Camera and Album)是相當基本的功能,那我們要怎樣用AngularJS來實作呢?
動作選單 (Action Sheet)是個很常用到的介面,原來只要複製以下的程式碼來改就行囉!
![[Ionic] 動作選單 (Action Sheet)](https://cg2010studio.com/wp-content/uploads/2017/10/ionic-e58b95e4bd9ce981b8e596ae-action-sheet.png?w=540)
/**
Theme: Action Sheet
IDE: None
Language: AngularJS
Date: 106/10/16
Author: HappyMan
Blog: https://cg2010studio.com/
*/
var hideSheet = $ionicActionSheet.show({
buttons: [
{ text: '照相' },
{ text: '相簿' }
],
// destructiveText: 'Delete',
titleText: '請選擇',
cancelText: '取消',
cancel: function() {
console.log('cancel add');
},
buttonClicked: function(index) {
if (index == 0) {
console.log('照相');
}
if (index == 1) {
console.log('相簿');
}
return true;
}
});
記得要引用$ionicActionSheet。
參考:ionic 1- $ionicActionSheet。
2015年有介紹過位元代碼 (Bitcode),儘管沒有很關注它的發展,偶爾卻會在編譯的時候有Bitcode問題。
編譯後出現錯誤訊息:
Invalid bitcode signature
已經刪除暫存檔(Derived Data),和關閉啟用Bitcode,還是無法解決此問題。最後上網搜尋前人經驗,才發現可以透過Build Active Architecture Only設為Yes,就能成功編譯!
想起Debug時就有調整設定過,沒想到Release又遇到同樣的坑,所以這次就記錄一下吧!然後就要把版本發給老大測試囉~
持續使用Cocoapods來管理第三方套件,主要還是以Objective C來開發專案的我,有時候需要使用Swift的Open Source,才發現靜態庫、動態庫、Framework的區別要好好了解一下:P~
台灣時間9/13凌晨1點,Apple的特別活動就是發表最新的iPhone,這一次同時發布三支iPhone:iPhone 8、iPhone 8 Plus、iPhone X。
到公司後,立馬下載Xcode 9 GM,來體驗iPhone X 模擬器的呈現效果。就以我最近正在開發的自製遊戲-抓神魔獸為例。
HappyMan・迴響