hishidaの開発blog

EBシリーズ(EBPocket,EBWin,EBMac,EBStudio),KWIC Finder,xdoc2txt,読書尚友の開発者ブログ

Xcode

EBPocket for iOS クリップボード変更検知によるクリップボード検索

クリップボード検索というと、たいていの方は、「他のアプリと辞書アプリを同時に立ち上げて、他アプリでテキストをコピーすれば即座に辞書引きができる」という利用方法を期待するのではないだろうか。だが、EBPocketのクリップボード検索は、アプリケーシ…

iOS16のペーストボードの挙動について(EBPocket for iOS)

iOS16以降、他のアプリケーションでコピーした内容をペーストボードからペーストしようとすると、許可を求められるようになった。EBPocketでクリップボード検索をすると、次のような確認ダイアログが毎回表示され、非常にうっとうしい。 iOS16.0.2で「一部の…

macOS Monterey12.6でEBMacの外字が表示されない【解決】

「macOS Monterey12.6でEBMacの外字が表示されない」という報告を受け、Macbook AirのmacOSをMonterey12.5から12.6に上げたところ、外字ビットマップが全て豆腐になってしまった。 どうもMonterey12.6の問題らしく、海外でも話題になっていた。24bit未満のbm…

読書尚友 for iOS ePub・テキスト読み上げ対応

読書尚友 for iOS のリリースから早いもので1年が過ぎた。開発予定の機能で残っていた、「ePub対応」と「テキスト読み上げ」の実装がやっと終わったのでリリースした。 ePub対応は、Android版の機能をほぼJavaからSwiftに移植しただけなので、表現力はほぼ…

読書尚友 for iOS の検討を開始

Android 版の読書尚友が落ち着いてきたので、次のお題としてiOS版の読書尚友を考えている。iOS版の青空文庫ビューアはi文庫Sという老舗アプリがあり、他にもフリーのアプリが一杯あるので、2021年の段階で参入するのは今更感が拭えない。だが青空文庫の注記…

Xcode 12 対応

Apple Silicon Macが登場し、今後はIntelからArmへの移行が思ったよりも早く進みそうである。主要なソフトは次々にユニバーサルアプリの対応を発表、あるいはリリースしている。 EBシリーズもユニバーサルアプリ化の準備として、まず開発環境をXcode12に移行…

EBPocket for iOS のWKWebView対応について

iOSではウェブブラウザ用のUIKitとして長らくUIWebViewが提供されてきたが、セキュリティ等の問題があり、iOS8からWKWebViewが提供されるようになった。UIWebViewは現在ではdeprecated (非推奨)となっており、2020年4月からUIWebViewを使用したアプリのAppSt…

EBPocket Pro for iOS iOS13ダークモード対応

EBPocket Pro for iOS のダークモード対応が終了し、無事App Store で公開できた。iOS13のダークモード対応以外の新機能の追加はない。 ダークモード対応を有効にするにはXcode11でビルドする必要があるのだが、Xcode11でビルドしたモジュールがiOS13ではメ…

EBMac ダークモード対応

EBMacの開発環境を最新のXcode11に移行し、macOSもCatalinaにアップデートしたところ、Xcode11でコンパイルしたappは自動的にダークモード対応とみなされることがわかった。せっかくなので画面の各部の色を調整し、正式にダークモード対応とした。どうでしょ…

iPhoneX 全画面対応

iPhone Xが発売されて数カ月が立つが、iPhone Xはこれまでと違う独特のアスペクトレシオを持ち、アプリもそれなりの対応が必要になる。 当方の開発環境はこれまでMac OS X 10.11 El Capitan および Xcode 8だったが、iPhone Xの対応はXcode 9以降となる。さ…

iPhone X の解像度の問題

「EBPocket が iPhone Xに対応していない」というご意見を頂いたので、Xcode 9 のエミュレータで確認したところ、横画面のときに検索一致リストと本文の横幅がイビツになっていることがわかった。次のスクリーンショットのように、本文の方が幅が狭くなって…

EBPocket for iOS のApp Extension対応について

iOSのアプリケーション間でテキストを受け渡したい場合、以前はURL Scheme、クリップボード、OpenInぐらいしか方法がなかった。 iOS8からは App Extension という新たなアプリケーション連携の方法が提供されており、Androidのintentのように、任意のアプリ…

iOS 11 Beta

WWDCでAppleからiPad proやMacbookなどの新製品とiOS11 が発表され、即日iOS Dev Center から、Xcode 9 betaと iOS11 betaがダウンロードできるようになった。早速iOS11 betaをダウンロードして検証した。iPad mini2 と、最近中古で購入したiPhone 5sにiOS11…

C配列にObjective-Cのオブジェクトを保存するのは危険?

やっと安定したと思っていたEBPocket for iOSだが、複合検索で外字を選択すると異常終了するという報告をいただいた。 http://ebstudio.info/wforum_ebppc/hatenacamera.cgi?mode=allread&no=2686&page=0 エミュレータで調べたところ、32bit OSでは問題が起…

EBPocket for iOS サスペンドからの復帰で異常終了する件が解決か

「EBPocket for iOS が、サスペンドからの復帰時に異常終了する」という報告が以前から上がっており、なかなか原因が分からなくて頭を悩ませていたが、どうやら解決できたと思う。 iOSアプリのプロセスのライフサイクルについて まず話の前提として、iOSのア…

EBPocket for iOS の中華フォント現象

「iOS10から、EBPocket for iOSの本文の日本語部分のフォントが中国語の繁体字になっている」というご指摘があった。iPad mini2で確認すると、英語フォントを指定した場合、確かに中国語の字形になっている。フォントの初期値をヒラギノではなく英語フォント…

Xcode7 beta

Xcode7 betaとiOS9エミュレータが本日ダウンロード可能に。確認してみたが、iOS9のSDKでEBPocketをコンパイルした場合、iPhoneエミュレータでは起動するがiPadエミュレータでは起動しない。iPad版では画面分割にサードパーティのライブラリのMGSplitViewCont…

Xcode および AndroidでのSTLの利用について

STL(Standard Template Library )はC++の標準ライブラリで、クラスとテンプレートの利用により、vectorやmap、listのような一般的なアルゴリズムを任意の型に対して使用できる。自分でアルゴリズムを実装するよりも、STLを使用した方が信頼性や性能面で向上…

EBMac 64bit化

EBPocket for iOS のiOS8対応版は、ストアに提出して1週間経つが、審査が混んでいるのか、まだレビュー待ちである。 今回EBPocket for iOS を arm64 対応をした結果、ソースを共有しているEBMacも64bit版でビルドできるようになった。数日でVectorに上げら…

EBPocket for iOS / iOS8対応

週末をまるまる潰して、EBPocket for iOS のiOS8対応を終え、やっとAppStoreに提出。意外やiOS7対応の時以上に大変で、何度も挫折しそうになった。これでreject食らったら、かなりめげる。Apple大嫌い。 ご参考までに、今回つまづいた部分を忘備録的に書いて…

iOS8対応

前回EBPocket for iOSのiOS8対応について、エミュレータレベルで確認できたという記事を載せたが、iPhone 6 plus の実機では「文字が拡大されてぼやける」というご指摘があった。遅ればせながら、iOS8対応の作業に取り掛かっている。 以下はエミュレータで試…

Xcode6

iPhone6が発表された。 液晶のサイズが大きくなることは予想されていたが、解像度についての事前情報は全く漏れてこなかった。発表では、4.7インチは750x1334ドット、5.5インチは1080x1920ドットとのこと。 iOS Dev Centerを開くと、 iOS 8 GM seedを含む Xc…

EBPocket for iOS7(3)

iPhone5s/5cの発売まであと2日。 iOS7をiPod touch 5thに入れて実験したところ、どうやらXcode5.0でコンパイルしたアプリでないと、iOS7風のフラットUIにならないらしい。Xcode4.x以前でコンパイルされた従来のアプリは、従来のUIで表示されるようだ。ただし…

EBPocket for iOS7(2)

開発者向けにXcode5-DP2がリリースされ、iOS7用のiPad エミュレータが提供されるようになった。なんとかiOS7用の修正を完了。とはいえ、正式リリースまでには挙動が変わる可能性がまだある。 これで一息ついたので、今はWindows8ストアアプリの勉強を行って…

ios-sim

Xcodeに付属するiPhoneシミュレータは便利なものだが、シミュレータにiPhoneアプリを転送するには、Xcode環境で必ずソースからコンパイルしなければならない。 と、長い間思っていたのだが、ios-simというツールを使うと、コマンドラインから直接アプリをシ…

MacBook Pro 13" Part2

環境構築中だが、一つ困った問題が発生。 Mountain LionのXCode4.4ではiOS4.3のシミュレータがダウンロードできないようにロックされており、iOS5.0と5.1のシミュレータしか存在しない。同じXCode4.4でも、Lion上で動かした場合は、iOS4.3シミュレータがダウ…

EBPocket for iOS 2.10

リリース間隔が空いたが、本日提出。 iOS5でTwitterに投稿する場合、iOSの設定のTwitterアカウントを使用。 Evernoteに投稿するとき、不等号文字が含まれていると送信できない問題を修正。 ほかに、iOS6で表示がおかしくなる問題を予防的に修正してある。実…

Snow Leopard / Xcode4.2 / SDK5.1

最近、ユーザサポートの都合で、自分のiPod touchをiOS5.1にアップした。ところが、Snow Leopard用のXcode4.3 & SDK5.1は提供されないため、Snow Leopardでの実機デバッグができなくなってしまった。もちろんVM WareでLionに切り替えればデバッグできるが、…

近況2

EBPocket for iOSは、ver2.06を提出。iOS5になってからクリップボード検索ができなくなっていた問題を修正。 提出用のビルドは、まだxcode3.2.5で行っているが、xcode4.2でiOS5のSDKもテストはしている。distribution 用のArchiveに成功したのがやっと今日だ…

独学のすすめ

iPhoneやandroidのような新しいプラットフォームが登場することで、今まで経験のないプログラミング環境の習得を余儀なくされることがある。 こういう場合、短期間に効率よく学習するにはどうすればよいか。誰しも苦労していると思うし、自分も日々苦闘して…