Xamarin プログラミングもくもく会 #4 - 無差別級もくもく会 | Doorkeeper
アイコンの設定
・ここが詳しい Hello, iOS - Xamarin : XLsoft エクセルソフト
・アイコンのサンプルのzipのURLのパスはこれが正しい http://developer.xamarin.com/guides/android/getting_started/hello,android/Resources/XamarinAppIconsAndLaunchImages.zip
このサイトの↓の項目が実際に見つからない。
アイコン
スプラッシュ
↓現実
WebViewのcssやjsのパスについて
Xamarin.FormsでWebビューを使用するには? - Build Insider
YouTubeのURLを指定すればをvideoタグに直接入れられるプラグイン MediaElement.js - HTML5 video and audio unification framework
広告
AmazonにXamarin用プラグインがある(Unityも)
クロスプラットフォームエンジン用のモバイル広告プラグイン - アマゾン アプリ 開発者ポータル
csvのプラグイン
コレを使用 https://github.com/JoshClose/CsvHelper/
"1", "2"
のCSVの場合、"1"
と"2"
となる。
"
は書かない方がいい。
エスケープするときは"""1"
のようだ。
※RFC4180的にはどちらでも良い。
1, 2
と書いてる場合はカンマの後の半角スペースを消す方がいいと思う。
→ 1,2
作者のissue
https://github.com/JoshClose/CsvHelper/issues/458#issuecomment-239072342
Label内での改行
CSVに書くときは<br />
を書いておき、表示するときEnvironment.NewLine
でリプレースした。
Desc = detail.Replace("<br />", Environment.NewLine)
トランザクション
もともと
// ①CSVファイルのDLするメソッド static async Task<string> GetWebPageAsync(Uri uri) { // do something. }
// ①を実行 & Realmの操作 public static void Hoge( ref int id, string lang, int type, HttpClient httpClient, string url ) { // 取得したいWebページのURI. Uri webUri = new Uri(url); // GetWebPageAsyncメソッドを呼び出す Task<string> webTask = httpClient.GetStringAsync(webUri); // Mainメソッドではawaitできないので、処理が完了するまで待機する. webTask.Wait(); // RealmにInsertするコード do something..... }
public static async Task<bool> Initialization() { Hoge(); Hoge(); Hoge(); }
トランザクションエラー。
おそらくCSVのダウンロードが投げっぱなしになり、前後関係を待たずにCSVをInsertしているから?
↓
Take 1
public static async Task<bool> Initialization() { var str1 = await csv1のDL(); var str2 = await csv2のDL(); var str3 = await csv3のDL(); str1とRealmに入れるメソッド(); str2とRealmに入れるメソッド(); str3とRealmに入れるメソッド(); }
csvをstringに入れることでメモリ足りなくなって?、シミュレータが落ちる。
Take2 Realmにいれたらstrを使いまわして無駄に変数に突っ込まないようにする
var str = csv1のDL(); // このラムダ式で挟む await Task.Run(() => { strをRealmに入れるメソッド(); } str = await csv2のDL(); await Task.Run(() => { strをRealmに入れるメソッド(); } str = await csv3のDL(); await Task.Run(() => { strをRealmに入れるメソッド(); }
→が・・・まだTransactionエラーがたまに・・・ 一応エラー時にはダイアログ入れた。
Unityとの対応覚書
Unity | 非同期プログラミング |
---|---|
IEnumerator | async Task |
yield return | await |
yield break | return |