カテゴリー別アーカイブ: Android

【Monaca】古いAndroidのWebViewでMonacaの機能が動かなかった件

またもやMonacaネタです。

Monacaで開発をしていて、テストビルドがAndroid4.4で動かない問題が発生しました。

エラー内容は、

Uncaught TypeError: Object #<PageElement> has no method 'matches'

プログラムとしては特に大したことはしておらず、以下のようにページの判定をしたいだけでした。

document.addEventListener('init', function(event) {
    var page = event.target;
    if (!page.matches('#register-page')) {
        ~~~
    }

どうやらevent.targetの指定がうまく動作しないようです。

サポートに聞いたところ、「Crosswalk WebView Engine」というプラグインを入れることで解決しました。

これは独自のWebViewをアプリに含めることで、Androidのバージョン間の差異を吸収してくれるプラグインらしいです。

ただし、これをインストールすると5MBほどだったアプリの容量が30MBほどに増えてしまいました。

解決したのはたいへん助かったのですが、この容量の増加はさすがに考えものですね・・・

【Monaca】AndroidとiOSのデザインを共通化

タイトルのとおりですが、MonacaのOnsenUI2でAndroidのデザインがiOSとは別になってしまう際に共通化する方法です。

OnsenUI2はデフォルトの状態だと、Android版ではネイティブのUIを使うようになっています。

ネイティブのUIを使うことでAndroidに合ったアプリの開発が可能になりますが、開発のコストやデザインを考えてiOSと共通にしたい方もいるかと思います。

そんな時は、スクリプトの最初に

ons.disableAutoStyling();

を付けるといいみたいです。

【課題】スマートウォッチは何が便利なのか

この記事は大学の課題として作成していますが、普段の記事と同じ位置付けで書いています。

あらすじ

大学の授業の課題も7回目に入り、本格的にネタ切れになってきました。

正直言うと今回も提出期限は金曜日なので、25時間オーバーということになります。すみません・・・

ネタ切れというか、背伸びして堅苦しいことを書こうとしすぎてる感が否めませんので、今回は緩い話題を書いていきたいと思います。

アウトライン

  • 問い:スマートウォッチって便利なの?
  • 主張:通知が見れるだけで思った以上に便利
  • 論証:LINEやメール、Twitterなどは確認できるだけで十分

では、書いていきたいと思います!


スマートウォッチって便利なの?

Apple Watchを代表とするスマートウォッチは、最近のIoTデバイスの身近な代表例の1つです。

しかし実際に買うとなると、どういう場面でどれくらい便利なのか、いまいち実感が湧かずに躊躇する方も多いかと思います。

そこで私が実際にスマートウォッチを購入し、どのような場面で便利なのかを調べてみました。

今回購入したのはMotorolaのMoto 360というスマートウォッチです。

img_20161115_085118

通知が見れるだけで思った以上に便利

さて、実際に使ってみて便利だと感じたのは、何といっても通知が来ることでした。

スマートウォッチを購入する前は通知が見れることはたいしたメリットではないと思っていましたが、実際に使ってみると通知が見れるだけでスマホを開く回数が大幅に減っていることに気付きました。

おかげで(恥ずかしながら以前はやっていた)歩きスマホもほとんどしなくなり、端末の電池持ちも良くなりました。

スマートウォッチにはこの他にも心拍計やナビ機能などといろいろ付いていますが、今のところ一番便利なのは通知機能に他ならないと思います。

LINEやメール、Twitterなどは確認できるだけで十分

ではなぜ、通知が見れるだけでスマホを開く回数が減ったのか。

考えてみると、私は以前まで何気ない時間にスマホを開いて通知を確認したり、SNSの返信をしていたと思います。

しかし、そのブツ切りの短い時間では、作業効率はお世辞にも良かったとは言えませんでした。

スマホを取り出して、ロックを解除して、操作をして、再びポケットにしまう。

ちょっとした時間にこなすにはあまりにも作業量が多すぎます。

スマートウォッチを使い始めてから、ふとした瞬間に通知を確認し、作業内容を考え、あとでまとめてこなす、という流れが身に付いたように思えます。

ちょっとした時間に見れるのがスマートウォッチ最大の利点だと認識させられました。

いかがだったでしょうか。世間的にはまだまだ普及していないスマートウォッチですが、個人的にはなかなかオススメです!

(860文字)

【Android】WebViewでBasic認証のダイアログが表示されない件

先日、取引先とLINEで連絡を取っていて、BASIC認証をかけたテストサイトのURL送ることがありました。

すると、連絡先の人から「見れない」というメッセージをいただきました。

おかしいと思いURLをタップしてみると、確かに401エラーが出ており、見ることができません。

リロードしても認証画面は出ず、解決手段を模索することになりました。

原因

このサイトを見ていると、どうやらBASIC認証のヘッダーがきちんと設定されていない気がします。

ただ、他のブラウザからは正常に認証画面が表示されていたので、長く使うサイトでもないですし認証さえ通せば取り急ぎは問題ないと判断しました。

解決策

このサイトを参考にして、URLに認証情報を含めました。

https://user:passwd@www.somesite.com

URLをトラッキングされると認証情報を取られる可能性がありますが、今回は認証をかけたいわけではなく公開状態にしたくないだけだったので、取り急ぎはこれで問題なしとします。

ポケモンGO 勝手にバグトラッキング

ポケモンGOバグ多すぎィ!!

・・・てことで、メモというか記録というか、私の端末で再現しているバグと思われる一覧を書いていきます。

特にジム戦は不安定なので、別項目で書きます。

また、バージョンごとに再現するかどうかも記録していきたいと思います。

使用端末 LG Nexus 5X

ジム戦

  1. 人気のジムに同時アクセスでエラー
  2. ジムのバトルステージのグラフィックが描画されない
  3. 共闘時に交代すると両者のポケモンが大ダメージを受けて勝手に倒れる
  4. 交代時にHPが0のポケモンが選択されることがある(もちろんすぐに倒れる)
  5. フレームドロップのせいで攻撃タイミングが判別できない際、理不尽に攻撃を貰うことがある
  6. 避けてもダメージがある
  7. ジム選択でエラーが出た後再度ジムにアクセスするとUIが表示されず動けない
  8. ジムのポケモンを倒しても次が出てこないことがある
  9. 回避しても攻撃エフェクトは当たっているように見える
  10. 攻撃エフェクトと回避タイミングがどう見ても合っていない
  11. ジムを崩した人より先に他のプレイヤーが崩したジムにポケモンを置ける

それ以外

  1. 強化してもほしのすなが減らない(実際には減っている)
  2. やせいのポケモン選択でエラー
  3. ポケストップ選択時にリソース参照値が一瞬表示される
  4. ポケストップを回しても色が変わらないことがある

詳細

再現率は体感です。ごめんなさい・・・

ジム戦

番号 再現度 v0.39.1以前 v0.39.1 v40.4
1 20%
2 5%以下
3 30%
4 10%
5 20%
6 100%
7 50%
8 5%以下
9 100%
10 100%
11 100%

その他

番号 再現度 v0.39.1以前 v0.39.1 v40.4
1 100%
2 5%以下
3 100%
4 10%

Nexus 5XのAndroidを7.0に更新してみた

手持ちのNexus 5XにAndroid 7.0へのアップデート通知が来ていたので、更新してみました。

ダウンロード容量は1GBほど、アップデートにかかった時間は30分ほどです。

全てではないですが、大きな変更点をレビューしておこうと思います。

通知のレイアウトが改善

6.0の通知はカード状の通知欄をすべて引き出してからタップして変更という流れでしたが、7.0ではレイアウトが変更されました。

まずは下の画像のように少し引き出すとクイック通知が出てきて、ライトや画面回転の設定など簡易的な操作ができます。

screenshot_20160929-123856

さらに引き出すと、WiFiやキャストなどの詳細設定が出てきます。

screenshot_20160929-123927

また、6.0だと通知欄が横幅いっぱいに出てこなかったのですが、7.0で改善され見やすくなりました。

全体的にとても使いやすくなり、重宝しています。

これはやっぱりiPhoneを意識してるのかな。。(持ってないから知らないですが・・・)

画面分割

7.0からはマルチタスクがサポートされ、画面を分割して使えるようになりました。

試しにChromeとYouTubeを同時に開いてみました。

screenshot_20160929-124235

正直この機能は日常利用ではあまり出番が無さそうです・・・

特にNexus 5Xだと画面が小さすぎて、画面を分割すると操作しづらくなってしまいます。

便利なのはバックグラウンド再生ができないYouTube動画を見ながらツイッターをする時くらいでしょうか。

また、ポケモンGOなど画面分割を使えないアプリもけっこうありました。

タブレットや、将来Android端末をパソコンのように使う環境が整った時に役に立ちそうな機能です。

バッテリー持ちが向上

6.0から存在したバッテリー節約機能であるDozeが、さらに役に立っているように感じます。

使っていない時のスリープの効率が良くなり、以前と比べて目に見えてバッテリー持ちが向上しています。

寝るときに15%以下でも翌朝7%ほど残っていたりと、けっこう節約してくれます。

まとめ

Nexus 5Xユーザーなら、是非ともAndroid7.0にアップグレードするべきだと思います。

Android 6.0と比べて使用感もあまり変わりませんし、細かい機能向上や使い勝手の改善が見られます。

また、クラッシュや遅くなることもほとんどなく、動作も非常に安定しています。

時間もあまりかからないので、特別な事情がない限りアップグレードすることをおすすめしておきます。

ではでは!