年別アーカイブ 2018

著者:ym

コンプライTS500

ジムやジョギング用に bluetooth のヘッドセットを持っているのですが、付属の大イヤーピースでもサイズが合わず、困っていたんですよね。

でも、良い製品を発見しました。まさかイヤーピースだけで販売しているとは。

X3Tに対応した型番はなかったので、試しに TS500 の L をつけてみたところ、これがジャストフィット。いや結構無理やり差し込みましたけど。
でも、耳はジャストフィット。ウレタンの低反発枕のような素材なので握ってつぶしてから耳に差し込めば徐々に大きくなって抜けなくなります。
ただ素材的には消耗品なので、いずれは買い直しが必要、これはやむを得ないかな。
これで、何か食べて落ちるとか、下向いて落ちるとかが改善されたのでよしとします。

  • この記事いいね! (0)
takahashi 著者:takahashi

XperiaのBluetoothで音が途切れる・聞こえなくなる不具合を治す方法

自分はメインのスマートフォンとしてXperia Z5 を使用しています。
SONYが製造・販売するスマートフォン、Xperiaシリーズは当初からかなり人気があり、一時期自分の周りのほとんどの人が、iPhoneかXperiaのどちらかを持っている状態になりました。

そんなXperiaですが、使っていて気づいたのがBluetooth周りの不具合。
自分の使っているZ5では、Bluetoothで音楽を聴いていると頻繁に音途切れが発生する問題が起きていました。
見ている限り端末の高負荷時に起きているような印象だったので、きっとそれが原因だと考えていたのですが、Z5より前に使っていたAQUOS PHONE 303SHでは負荷がかかってもBluetoothが途切れることはかなりまれだったので、変だな、とは思っていました。

最近かなり途切れ具合が酷くなっていたので、ネットで対策方法を調べていたらこんな記事が。

Xperia Z5でBluetoothイヤフォンが音飛び、途切れる、音が出ない場合などの改善・対処方法 – スマホ評価・不具合ニュース

どうやらこれ、どうもバグだったようで…
Androidの標準機能からペアリングすると不具合が発生するので、SONY独自のファームウェアに含まれる”Throw”からペアリングすることで安定するようになるとのこと。

まず、ホーム画面内のドロワーから、”設定”を開きます。

中から”機器接続”を選択

“Throw” をタップします。

Throwについて をタップ

はじめにをタップします。

今セットアップをしようとしている機器の種類を選択

Bluetoothを選択します。

機器を追加 をタップ

この状態になったら、Bluetooth機器の方をペアリングモードにすると、Xperia側に機器が表示されるので、そこをタップすると設定完了です。

この方法でペアリングしなおしてから、音飛びや音が再生されない不具合は今のところ解消しています。
Xperiaは他のAndroid端末と比較して、かなり幅広い機器と接続できるのがとてもいいのですが、その反面Bluetooth周りに弱点が出てしまったような形です。

今後改善されることを願います。

  • この記事いいね! (0)
著者:杉浦

ウィキメディア・コモンズの紹介

 ウィキメディア・コモンズはコモンな素材を集めたサイトです。少なくとも公的な立場で何かを書くことになり、そのために使う画像を集めるに際し、権利関係で悩むのが面倒な人(私とか)の役に立ちます。(最近フリー素材でググっても大勢のおもちゃにされているだけで、全然フリーじゃない素材がけっこうでてきて厄介です)
 ウィキメディア・コモンズは一見、創造的であったりなんだりで著作権が付随していそうな硬いメディアが多岐にわたり豊富なことが他のフリー素材集との大きい違いです。ポップなアイコンなら、いらすとや、ピクトグラムなんかもおすすめできます。また、このメディアがどのくらいの範囲で、どういう理由でフリーなのかの説明も付随してくるというのも権利関係にお手軽に安心できて良いです。
 ウィキメディア財団はウィキペディア、ウィキメディア・コモンズのみならず様々な活動活動を行っています。英語版wiki関係の充実っぷりはとんでもない(wikipediaは500万を超える記事、10万人以上のアクティブな編集者)のでいろいろ探してみるのも面白いです。

  • この記事いいね! (0)
村上 著者:村上

【JavaScript】App Storeに公開済みのアプリのバージョンを取得する方法

タイトル通り、ストアに公開済みのiOSアプリのバージョンを取得する方法です。
Cordovaアプリを開発していて、アプリに新しいアップデートがあれば通知する、という機能を実装するための処理で使用しています。
プラグインが見つかればよかったのですが…見つからなかったので、JavaScriptでゴリゴリ書きました。

今回参考にさせていただいたサイトはこちら。

[iOS] iTunes Search API を利用してアプリの情報を取得する|Developers.IO
https://dev.classmethod.jp/smartphone/get-app-info-using-itunes-search-api/

[JS] iTunes APIをJavaScriptから利用して、iTunesで配信中の楽曲を視聴する – Yoheim.NET
https://www.yoheim.net/blog.php?q=20130702

上の記事で、iTunes Search API の URL の指定方法を。下の記事では、その URL を Ajax で使う方法を参考にしました。
特に、Ajax の指定が間違っていたせいで、URLがあっているのに取得できない!という現象に悩まされました…。

 

先にコードをご紹介。

$.ajax({
    url: 'https://itunes.apple.com/lookup?id=[アプリのID]&country=JP',
    method: 'GET',
    dataType: 'jsonp',
    success: function(data) {
        // 取得成功
        var version = data.results[0].version; // アプリのバージョン
    }, error: function(xhr, type){
        // エラー時の処理
    }
});

URLには、GETの書き方で、アプリのIDと国を指定します。
ポイントとしては、Typeを GET で指定することと、dataType を JSONP という指定にするという点ですね。
最初、単に JSON としてしまったせいで、エラーが発生していました。
成功すれば、変数 data でアプリの情報を取得できるので、そこから必要な情報を取得すればOKです。

 

以上、ストアのアプリのバージョンを確認する方法でした。
Android SwiftObjective-C だと、思いのほかやり方がすぐ見つかるようでしたが、JavaScriptはあまりヒットせず、苦労しました。
同じことでお悩みの方は、是非参考にしていただければと思います。

  • この記事いいね! (0)
takahashi 著者:takahashi

スマートフォンで本格的な緊急地震速報が受信できるアプリ “Signal Now Mobile”

先日からちょくちょく南海トラフ自身の話題がTwitterなどで上がっていました。

もし南海トラフ地震が起きた際の静岡県内の被害は甚大で、想定死者数は10万人を超えると予測されています。

南海トラフ地震の被害想定 – 朝日新聞

地震が起きた際、生存率を少しでも上げる方法として、情報をいかに早くキャッチして、適切な行動をとれるか、というのも助かる要因の一つになるのではないかと思います。

自分の場合、詳細な緊急地震速報を受け取るために、自宅のPCにSignal Now Xというアプリをインストールしてあります。
このSignal Now X 緊急地震速報を受信すると、警報音とともに、あと何秒で津波が到達するかを教えてくれる、高度なアプリとなっています。

ただしこのアプリ、Windowsにしか対応しておらず、PC向けなので持ち出せないというデメリットがありました。

そんな中、同じシリーズでスマートフォン版があったことを先日知りました。
SignalNow MObile = Google Playストア

その名前もSignalNowMobileです。

月額100円の有料とはなりますが。SignalNowXで取得できるような、あと何秒後で地震が到達するか、まで教えてくれます。

キャリア標準の緊急地震速報も強力ですが、秒数が表示されるアプリは今のところこちらだけな気がします。

巨大な地震も、普段から準備しておくことで少しでもリスクを減らすことができるはず。
備えあれば憂いなし、ですし、今のうちから準備をしておきたいですね。

  • この記事いいね! (0)
著者:杉浦

量子三目並べの紹介

 三目並べは〇×ゲームとして知られています。私の地元では〇×ゲームと呼ばれていました。googleで三目並べと検索すれば検索結果画面で三目並べを遊ぶこともできます。お互いが最善の行動をした〇×ゲームが引き分けで終わることは簡単にわかると思います。単純な三目並べの手筋は探索アルゴリズムを考えるより、総当たりをした方が早いぐらいの探索範囲で済みますしね。この記事では三目並べに量子力学の発想を加えた量子三目並べの紹介をします。
 量子力学の世界では量子重ね合わせ(複数の状態を同時に持つ。ビットは0と1を同時に取れる)、量子もつれ(他の量子の状態の確定によって他の量子の状態も確定した状態になる)という法則が存在します。量子三目並べはこの量子重ね合わせ、量子もつれらしいものを導入した〇×ゲームです。量子三目並べはQuantum Tic-Tac-Toeというタイトルでiphone、android両方でアプリとしてプレイすることが可能です。石関匠, & 松浦昭洋. (2010). 量子三目並べの必勝法解析.なんて論文もあります。
 ルール(wikipediaより引用。図は石関・松浦(2010)より引用)

盤は通常の三目並べと同様に3×3の9つのマスを使用する。マークは先手を○、後手を×として、順に○1、×2、○3、…、×8、○9とする。
各手番でプレイヤーは、9つのマスのうちの2つに確定していないマーク(石関・松浦(2010)では量子マークと呼んでいるのでここではこれに倣う)を置く。マークした時点ではこのマークは確定せず、ゲームの進行によって後から確定することになる。量子マークは他の量子マークがすでに置かれているマスにも置くことができる。特例として、○9の手番ですでに他の8マスが確定している場合のみ、残りの1マスを即座に○に確定させる。

プレイヤーの新たな量子マークによって、同じ番号の2つずつ量子マークをそれぞれ結んだときに輪ができる状態になったとき(これを「”cyclic entanglement”が発生した」と言う。)、この輪を完成させた方ではない方のプレイヤーが、この輪に関わるマークの確定のしかたを選ぶ。なお、cyclic entanglementが発生したとき、この輪を形成するいずれかの番号の量子マークをどちらかのマスに確定させると、連鎖的にこの輪に関わる全てのマークが確定するため、有りうる確定の結果は2通りである。ここで、「この輪に関わるマーク」とは、直接に輪を形成しているマークのみでなく、ペアのうち一方が輪の上あり、もう一方が輪に関係ないマスにある量子マークのペアも含む(このようなペアの量子マークは、輪に関係ない方のマスに確定する。)。

通常の三目並べと同様に、確定した自分のマークを一列に3つ並べたプレイヤーが勝利である。しかし、量子三目並べでは、cyclic entanglementを確定させた結果、先手と後手が同時にラインを完成させる場合がある。この場合は、ラインを形成する確定したマークの番号のそれぞれの最大値を比べて、これが小さい方が優位であるとされる。

 図3の(b)は7対6で×が勝ちです。このゲームは既に必勝法を解析されてしまいしたが、常人の頭の許容量を超える程度には深く、十分楽しむ余地がありお勧めできるゲームです。余談ですが英語wikipediaの目並べ系項目は異様に充実しています。目並べ研究会でもあるのでしょうか。

  • この記事いいね! (0)
村上 著者:村上

【Android Studio】Gradleのバージョンを確認&アップデートする方法

今日、Cordovaアプリにプラグインを追加しようとした際、Gradleのバージョンが低すぎる!と怒られました。
で、更新方法がわからず調べたので、まとめです。

最初はアプリの build.gradle のどこかを更新するのかと思いましたが、どうやら違うみたいです。

 

今回参考にさせていただいたサイトはこちらから。

AndroidStudioのGradleのアップデートについて – Pelikan Philosophy
http://www.peliphilo.net/archives/685

バージョンの確認&アップデート方法ですが、まず Android Studioのメニューバーにある File から Project Structure をクリックします。
そうすると、下の画像のようなウィンドウが表示されるので、左側のメニューから Project を選択します。

そうすると、ウィンドウ上部に、Gradle versionを入力する欄があるので、こちらに任意のバージョンを入力します。
入力出来たら、右下にある OK を押して、ウィンドウを閉じます。
あとは、Android Studio が入力されたバージョンを自動でインストールしてくれるので、それを待てば完了です!

 

もしかしたら、インストールに少し時間がかかるかもしれませんが、それ以外はとても簡単でした。
冒頭でも書きましたが、てっきり build.gradle に記述しているのではと思い込んでいたので、少し探してしまいました。
やはりわからないことは調べるに限りますね!

  • この記事いいね! (0)
takahashi 著者:takahashi

IEで使えない”Object.assign”を補完するPolyfillなjsライブラリ”object-assign.js”

会社で構築していたプログラムのデバッグをしていたところ、IEで動作しないファンクションを発見してしまいました…

Object.assign() – MDN Web Docs
この関数は

一つ以上の ソース オブジェクトから、直接所有で (own) 列挙可能な (enumerable) すべてのプロパティの値を、ターゲット オブジェクトへコピーします。

という機能を持っているのですが、この関数がInternet Explorerで対応していなくて、プログラムがIEで動かない状況が発生してました。

IEで対応していない、といわれるとかなり焦ってしまいますが、よく使われている関数については、大抵の場合代替えとなる関数を誰かが公開していることが多いです。
今回の Object.assign() については、こちらのサイトでPolyfillなライブラリが公開されていました。

spiralx/object-assign.js – Gist

今回は、このGistのコードを使わせていただきました。

使い方は簡単。
Object.assign()を使用しているページで、一緒にobject-assign.jsを読み込むだけ。
“assign”という名前で使えるようにしてくれているので、コード内で記述したファンクションを書き換える必要がないのは非常にありがたいです。

今回のように、新しいブラウザでしか対応していない関数をほぼ同じ機能を持つ同じ名前の自作関数として定義してしまうことで、使えるようにしてしまう手法のことを”Polifill”と呼ぶそうです。

反対に、その関数でやりたかったことを別の関数で代替えすることを”Ponyfill”と呼ぶそうです。

PolyfillとPonyfill – Qiita

それぞれの違いや、メリット/デメリットについては、上記の記事が非常に分かりやすいです。

html5によって、各ブラウザ間の動作はそこそこ統一されてきている印象はありますが、まだまだ完全な互換性があるとはいいがたく、依然としてWebプログラムのデバッグをするために、主要なブラウザで一通り動作確認をする必要があるのが現状です。

特に酷いのがビューの部分。ブラウザによって大分解釈が違うようで、Chromeは意図通りに動いても、SafariやIEだとめちゃくちゃに崩れている…なんてことも結構あり、油断できません。

正直HTML5の意味…とか思ってしまうけど、統一するのもなかなか一筋縄ではいかないのでしょう。
HTML5はまだ改善の途上ですし、今後に期待したいです。

とりあえず、せめてモダンなブラウザとの互換性がかなり微妙なIEがデファクトスタンダードな風潮だけは抜けてほしいなーと思いますね…

  • この記事いいね! (0)
村上 著者:村上

【CSS】:activeなどの疑似クラスがスマートフォンで効かない時の対処法

クリックした時や、要素の上にマウスを乗せたときのスタイルを指定できる疑似クラスはとても便利でよく使いますが、今回スマートフォンではスタイルが反映されないという現象に遭遇しました。
しばらくCSSの書き方が間違っているのかと悩みましたが、どうやら関係なかったみたいです。
で、対処法がこちら。

 

a:active, a:hover {
    background-color: red;
}
<a href="[リンク先]" ontouchstart="">リンクはこちら</a>

疑似クラスを指定した要素、今回は、aタグに対して、ontouchstart属性 を追加するだけです。
これを追加することにより、:active:hover が有効になります。
ちなみに、:active は要素がタップされたとき、ここで指定したスタイルが反映されますが、:hover は、マウスオーバー時ではなく、要素をタップ後、別の要素がタップされるまでの間、指定した要素が反映されます。

参考にさせていただいたサイトはこちらから。

:hoverに設定したCSSがスマホで反応しない時の対処|ビギナーズハイ
http://beginners-high.com/css-hover/

なお、追加する属性は、ontouchstart 以外にも、ontouchendontouchmove でも良いとのこと。

 

対処法としては以上です!
予想以上に簡単でしたので、同じことでお悩みの方は、是非お試しください。

  • この記事いいね! (0)
著者:杉浦

国土地理院サイトの便利な機能

国土地理院(こくどちりいん、英語:Geospatial Information Authority of Japan)は、国土交通省設置法及び測量法に基づいて測量行政を行う、国土交通省に置かれる特別の機関である wikipediaより(2018/04/18)

 国土地理院は日本の測量関係全般に広く深く関わっています。そのためか国土地理院のサイトはぱっと見に何があるのかわからないくらい価値の高い情報が山積みにされています。その中でも自分が使った、使っている即物的な部分を紹介します。

地理院ホーム > 刊行物・資料 > 国土地理院技術資料とその提供について > 技術資料リスト -n

 その名の通り国土地理院の技術資料のリストです。古い統計資料、基本的な技術から最近のGNSS関係まで広く保存されています。中でも”国土地理院のウェブサイトに掲載されているもの”は簡単にアクセスでき、利用範囲も広く便利です。

地理院ホーム > 基準点・測地観測データ > 便利なプログラム・データ

 その名の通り国土地理院の開示しているプログラム・データです。プログラムの比率が多めです。複数の機能がありますが特におすすめなのが”測量計算サイト”です。この機能は楕円体である地球の測量をお手軽に高精度に行えます。APIにも対応しているためそれなりの量の計算もこの機能だけで行えます。一部機能は計算方法も掲載されているため、これを参考にプログラムを用意すればビッグデータの様な大量の計算もできます。”測量計算サイト”は”公共測量での利用”を筆頭に公的に使用するには手続きが必要ですが、そのための公共測量か否かの判断チャート、手続き案内も国土地理院のサイトには備えてあります。

  • この記事いいね! (0)