うにのトゲは刺さると痛い(´・ω・`)-10

データ作成で時間がかかる(´・ω・`)

一応、前回で音楽有りのカード枚数を変更したりすることが出来たので、新たな機能を追加しようと思ったが、適当に作っていたから色々とコードが酷い(ヽ'ω`)

というわけでちょこちょこリファクタリング…というよりも大手術を実施中。
その途中で新しいカードセットが必要となり、国旗のセットを作ろうと目論む。
なんやかんやで無料素材があったのだけれども、その他のデータもついでにちょっと載せようとしたが為に、中々データ作成が終了しない…_| ̄|○

国連加盟国が193だか194で、日本が認めているのが196くらい?
なんか国連の広報センターだかが出してる国連加盟一覧は2014年のもので内容が古かったり、外務省の正式名称とも違ったりしていてイヤンな感じである(´・ω・`)

謎のエラーにハマり中
そんなこんなでデータ作成に一日二日と掛けていてコードの方はほとんど触っておらず、Android端末での起動もしていなかった。久しぶりにちょっと起動して愕然とする…カードの表側が表示されずに真っ白……( ;・´ω・`)ゴクリッ
Unity Editor上では正しく表示される…

新しくFilePathを追加したのがいけないのかと思ったが、Unity Editor上では問題ないし…

色々と調べた結果、どうもAndroid端末上だとTextデータが正しく読み取れていないみたい。
その結果、imageをロード出来なくて真っ白白助になっている模様(´・ω・`)
カードをクリックしてマッチしてない場合は戻り、マッチしている場合は消えるので他のデータはきちんと読み込まれている。

なんだろう… "SQLiteUnityKit" の使い方を間違えているのか……ちょっと調べないといけないな…(ヽ'ω`)


と思った数時間後、原因は判明しないが一応の解決はした。

色々とぐぐっても同じような事象はこの一件だけ。しかも何のコメントもなし。
How to make Sqlite work for Android with Unity and SQLiteUnityKit

それ以外でヒットすることもなく。凄く悩んだ(´・ω・`)
最初は何らかの処理が足らないかと思ったが、そんなこともなく。
AndroidではTEXT型だけ読めないのだろうかと思ったが以前試したdbのプロジェクトでは何事もなく読み取れた。

コードの書き方が悪くて負荷が大きくなって読めないのかと思って色々試したが状況は変わらず。
StreamingAssets内のdbを一旦削除し、残しておいた元dbをもう一回フォルダに突っ込んだけれども状況は変わらず。

致し方なく以前上手く動いていたdbを今のプロジェクトに持って来て試したところ、TEXT型の内容が読み取れた( ・´ω・`)?
最終的にそのdbを改変して内容をコピーした結果、無事に前の通り動くようになった…_| ̄|○

元々のdbが壊れたのだろうか…でもPC上では動いたな。
そう言えば、Android端末を再起動したのが効いたのかな?
dbは後から列を加えたりしたので、Android上のsqliteが前のdbをキャッシュしてて、それを読み込んでいたのかな?

まあ何はともあれ、何とか解決して良かった(・∀・)
また時間を無駄にしてしまったが…_| ̄|○

※追記
もしかすると上記の予想で当たりかもしれない。同じ現象に遭遇したが、Androidを再起動して、アンインストール後にインストールし直したら無事に解決した。アンインストールも関係ないかも。 一回でもアプリを起動して、その中でdbを使った後、PC上でdbの中身をいじってから、Android端末を再起動していない状態でアプリを再インストールすると駄目だったから。