ひらい ぶらり Hi-Library

ぷろぐらみんぐについて。ときどきどうでもいいことについて。

MySQL ShellでダンプされたデータをMySQLにロードするときに頻繁にロック待ちのタイムアウトが発生する場合の対策

MySQLのデータをダンプして、別のMySQLサーバーに移す機会が合ったので、MySQL Shellの機能を使ったところインポート時に度々エラーで止まってしまったため備忘録として記録。 8スレッドで並行処理をしていたところ、70%くらい終わったところで下記エラーが…

PHPSpreadSheet で getRowIterator, getCellIterator を使って getFormattedValue で値を取得すると Formatted されない

結論: getCell()->getFormattedValue() を使う場合は、すぐ使う。Cellを変数に格納してから、別のCellを getCell() してしまうと、Formatのデータは一番最後に呼び出されたCellのものになる。 業務ツールでありがちな、Excelからデータをインポートするみた…

Nginx で URL が長いとERR_CONNECTION_CLOSED になる対策

414 URL Too Long じゃなくて、接続が切られてしまう場合はおそらくhttp2が有効になっている。 Chrome とかだと 「このサイトにアクセスできません」「 xxx.com により途中で接続が切断されました。」みたいな表示になる場合は http2_max_field_size とか ht…

エレコムの5ボタンマウスをMacで使う

マジックトラックパッドやら色々つかって一周回って安物5ボタンマウスにもどってきました。 エレコムのマウスには「エレコム マウスアシスタント」というユーティリティがあり、これで5つあるボタンに機能を割り当てられます。 親指の位置に当たる、ボタン…

Trelloが日本語変換確定のEnterでカードが作成されてしまう対策

※ 2019/05/10 追記 直ったようです アトラシアンサポートです。一部の環境でTrelloを利用時に日本語の変換でフォーカスが次に移ってしまう問題の修正版を今朝リリースしました。リリースは段階的に適用されるため、ご利用の環境で修正が未反映の方につきまし…

Scootman S8 と V6 レビュー

Scootman V6 を愛用して1年とちょい位通勤に使っていたのだけれども、いい感じにトラックにドツかれて公道はしれなくなったので修理に出すことに。 結果、修理に出すまでの間に充電を怠っていたのが災いして、バッテリーがおしゃかに。その他の修理費用を合…

Illustraorで出力したSVGがTCPDFでスタイルが正しく反映されない

おはよーこんちわーこんばんわーおやすみーおきてー! しんばしです。 結論:出力時に「スタイル属性」を指定して、インラインでスタイル属性を埋め込めばよさそう 以下経過 タイトルの通り、Illustraorで出力されたSVGをTCPDFでPDFに埋め込んだところ 「画…

AWS SDK for PHP 3.x のS3のCopyObjectで署名エラー

getObjectとかlistObjectは特に問題なく動作しているのに、CopyObjectの時だけ署名エラーがでる。 SignatureDoesNotMatch はい。 色々検証してみた結果、CopySourceの項目に日本語が使われているとエラーになるようだ。 Keyには使用しても問題ない。 仕方な…

AndroidTestCaseでsetUpが呼ばれた後にApplicationクラスが生成されてハマった

解決策:InstrumentationTestCaseにして、setUpメソッドで super.setUp した後にgetInstrumentation.waitForIdleSync() を呼ぶべし 期待していた動き - Appicationクラスが生成される - TestクラスのsetUpメソッドが呼ばれる - Testクラスのtestメソッドが呼…

FragmentStatePagerAdapterを使えと言ったな、あれは嘘だ

第二の結論 データの更新をしようなんて考えない。FragmentStatePagerAdapterごと作りなおす。 注意 FragmentPagerAdapterではAdapter作りなおしても意味がない チラ裏 必ずしもFragmentStatePagerAdapterを使えば、notifyDataSetChangedで期待通りに変わる…

FragmentPagerAdapterでnotifyDataSetChangedを呼んでも更新されない

結論 FragmentStatePagerAdapterを使え、でも問題はたくさんあるから油断をしてはいけない ※追記あり FragmentStatePagerAdapterを使えと言ったな、あれは嘘だ - ひらい ぶらり Hi-Library 解決する内容 FragmentStatePagerAdapterは、destroyItemでfragment…

特定の辺だけにstrokeを付ける場合の補足

【Android】特定の辺だけにstrokeをつけたい - Qiitaqiita.com こちらの記事で丁寧に書かれて居るのだけれども、Javaで書いた場合とXMLで書いた場合に微妙な差異があって、機種によってはJavaで書いた場合に意図しない挙動を起こす可能性があるので補足。 元…

manifestのproviderのandroid:authorityesにvalues/strings.xmlに定義した文字列を使うとインストールに失敗する

BuildTypeをreleaseでapeをビルドしようとしたら、lintでMissingTranslationとか出てコケた。 values-jaとか作ったら、全てのkeyがvaluesにあるものと一致しないとコケるようだ。そこはよろしくvaluesの値を使って欲しい。 どうやらこの警告は無視してビルド…

androidでfont変えると色々と弊害があるっぽい

怪奇現象が色々発生した maxLinesとか指定するとずれる なんだか2行目の文字が1行目に食い込んだりする 消える もはや表示されない。 端末によって挙動が違う 消えたり、消えなかったり、ずれたり、ずれなかったり 噂によるとheightをしてしたり、layout_gr…

フォントサイズ自動調節TextView メモ

フォントを変更した場合には一手間加える必要がある 参考 http://dev.classmethod.jp/smartphone/android-font-fit-text-view/ https://gist.github.com/STAR-ZERO/2934490 mPaint.setFaceType(getFaceType()) // フォントをPaintオブジェクトに渡してあげる…

androidでTextViewに埋め込みフォントを使う

結論 API Level9以降(2.3)ならCaligraphyを使う chrisjenx/Calligraphy · GitHub 疑問 マテリアルガイドラインによると、RobotoフォントとかNotoフォントを使えって書いたある。 ちょろっと調べて思い浮かんだ疑問 assetsにファイルサイズ制限なかったっけ…

Volleyで302リダレクトできなかった話

どうも、バグを生み出すプロ、しんばしさんです。 なんやて工藤! 非同期のHTTP通信ライブラリのVolleyを使用していたのですが、302リダイレクトするAPIへアクセスしたところ com.android.volley.NoConnectionError: java.io.IOException: Could not retriev…

TextViewで縦にはみ出してるかどうかを検知したい

どうもわたくしです。 TextViewの高さを超えてテキストがセットされていたら、ボタンを出したい。 ボタンを出したいんです。 こんなかんじにTextViewを超えて長文が入力されていたら ボタンを出したい。 解決編 行数 > 最大行数(TextViewの高さ / 1行あた…

Android で MD5とかSHA-256とかするのにcommons-codec使おうとしたらエラーが出た話

MD5やらSHA-256でハッシュ化したい機会ってのはよくあると思うんですが、ググるとなんでかMessageDigestクラス使って長々と記述するサンプルが多く見かける気がします。 ラップしたクラスを作ってもいいんですが、せっかくだから俺はcommons-codec使うぜ! g…

フォントサイズ自動調整TextViewをListViewで使いたい

大体皆さん "android フォント 自動" "android Textview 横幅" とかでググって、TextViewを継承したクラスの実装を見かけたと思います。 参考 http://dev.classmethod.jp/smartphone/android-font-fit-text-view/ https://gist.github.com/STAR-ZERO/2934490…

mitmproxyでRequestを書き換える時にvimが勝手に\r入れちゃう

vimは勝手に改行コード入れちゃうので :set binary noeol と打ってから保存すればおk

ImageViewの明度、コントラスト、彩度、色相をObjectAnimatorでアニメーションする

タイトルのようなことをしたかったんですが、そんなプロパティはなかったのでImageViewを拡張してプロパティをつけたら出来ました。 ↓のようなクラスを作って、xmlなり動的に生成するなりしたImageViewに対して操作をすれば期待した動きをしてくれる。 publi…

Android Studio を 0.8.14 にアップデートしたら「The Android SDK folder can no longer be inside the application folder.」とか言われた

こんにちはこんにちは 久しぶりにAndroid Studioを起動することになったらアップデートが来てたので、作業後にアップデートしてみることに。 なんか出た。 んー、SDKフォルダをApplicationsに置くなということらしい。詳細を見てみると本来はそういうとこに…

androidで強制的にChromeで開くリンク

<a href="intent://yahoo.co.jp#Intent;scheme=http;action=android.intent.action.VIEW;package=com.android.chrome;end ">Chromeで開く</a> このリンクを開くアプリケーションがまともな実装をしている場合に限り、http://yahoo.co.jpが開かれるっぽい。 Operadで実験してみたところ成功したけど、全てのアプリで起動するかわWebViewClientの実装によるので絶対とはいえないのが切ない…

WebViewとかで未知のSchemeに対する処理最新版(?)

androidアプリを作る際にWebViewを組み込んでアプリ内ブラウザで表示することとかよくあると思います。 そんな時にWebページの中にhoge://hugahugaみたいなURIが出てきた場合は、大体shouldOverrideUrlLoading内に @Override public boolean shouldOverrideU…

Laravel4 でSessionをMemcachedに保存したい

備忘録 phpのモジュールでmemcached入れておく必要があるよ memcacheじゃないよ app/config/session.php

Laravel4で複合プライマリーキーを設定する

Laravel4のSchemeBuilderを使って複合プライマリーキーを設定したかったけどダメだった。 パーティションを切りたかったので、パーティションのキーになる日時も合わせて複合主キーにしたかったけど、incrementsメソッドにはもれなくprimaryがついちゃうらし…

Android Studio 0.4.2 にあげたら 「You are using Gradle version 1.6, which is not supported. Please use version 1.9. Please point to a supported Gradle version in the project's Gradle settings or in the project's Gradle wrapper (if applicable.)」とか言われた

久しぶりにandroidのアプリケーションをいじることになったので、AndroidStudioを新しいマシンに入れ直して、目的のプロジェクトをcloneして、gradleはwrapperを使うようにして開いたところ、表題のようなことを言われた。 「おめーのプロジェクトで使ってる…

SmartWatch2のapkをAndroidStudioでビルドしてみる #vgadvent2013

この記事はVOYAGE GROUP エンジニアブログ : Advent Calendar 2013の16日目の記事になります。 ガジェッターの皆さんこんにちは。@shinbashiです。 昨今では猫も杓子もスマホスマホですが、スマホといえばあれですよね。 SmartWatch2 これですよね。大体の人…

話題のKLABのPlaygroundのsoをビルドしようとして失敗した

MacでPlaygroundをandroid用にビルドしようとして微妙にコケました。 ビルド手順はこちらを参考にすると非常にわかりやすいです ブライテクノBlog 2D/2.5Dゲームエンジン Playgroundのセットアップ http://brightechno.com/blog/archives/150 NDKのパスは同…