月別アーカイブ 9月 2018

asaba 著者:asaba

【android Java】document already exists at the specified project location

また新規プロジェクトを作る時のネタになります。

最近あるアプリを作りたくて新しくemptyのアクティビティを作った時のお話です。かなり初歩的なエラーを踏んでしまい、その戒めを込めて綴っていきます。

その時のエラー時の画像です。

黄色い三角マークで、document already exists at the specified project locationと表記されているエラー。これは新しくプロジェクトを作る時に、ディレクトリのフォルダ名を明記していないときに起こります。

後ろに/(スラッシュ)とフォルダ名(何でもいい)をつければ正常にプロジェクトが出来上がります。いじるところは赤く囲ってあるところだけ。

原因は、document直下でgradleやideaなどがまとまったフォルダにないと後にビルドするときに見つけることができずnot foundになってしまうためです。

新しいプロジェクトを作る時は、必ずひとまとめにできるようにディレクトリ作成時にフォルダを付け足してあげましょう。

 

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

webページ評価ツールLighthouse

 Lighthouse – Chrome ウェブストア
 Lighthouse によるウェブアプリの監査 | Tools for Web Developers
| Google Developers

 Lighthouseはwebページの評価を行ってくれるツールです。お手軽な使い方は上記リンクのウェブストアからChrome拡張機能としてのLighthouseを導入し使用することです。オプションもコマンドも必要なく、ただ起動するだけで監査を行い、結果を出力します。 Lighthouseの評価は下図の様にPerformance,ProgressiveWebApp,Accessibility,Best Practices,SEOに分かれています。

 それぞれ、Performanceはおおよそ速度、データ量関連に問題が無いか、ProgressiveWebAppはネイティブアプリのようにふるまえるか、Accessibilityはわかりやすさ、Best Practicesは良いとされるやり方をしているか、SEOは検索エンジン最適化がされているか、です。画像の更に下の方には細分化された指摘がいくつもあります。
 Lighthauseの特徴は、googleが奨励しているPWAとしての評価がgoogle自身の規定でできる、という点です。またSEOは大概眉唾物ですが検索エンジン大手のgoogleが提供するツールが評価するSEOですから多少は当てになるでしょう。
 これが高得点ならばよいwebページというわけはないです。PWAは特に顕著でアプリである必要のないページは多々あります。基本的にぱっと見の第一印象がどうか、という点から評価がなされます。ただ高得点のページならば低得点のページよりも快適に使用しやすいのではないでしょうか。
 また、Lighthouseの指摘により今まで知らなかったより良いやり方を知ることもできます。

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

【Windows10】拡張子が「.rar」のファイルを解凍するソフト「RAR Opener」

今日メールで受け取ったファイルが「.rar」というあまり見慣れない拡張子だったので、備忘録もかねてこのファイルの開き方についてです。

まず、rar拡張子について簡単にまとめ。
この「rar」は圧縮ファイル形式の一つで、Windowsでよく使われる「zip」よりも高い圧縮率をほこるとのこと。
圧縮・解凍が高難度であるため、海外では使われることもあるそうですが、日本ではまず使われていないようです。

 

さて、肝心のファイルの解凍方法ですが、私はこちらの「RAR Opener」というソフトを使用しました。
こちらは下記の Microsoft の公式サイトからインストールすることができます。

RAR Opener を入手 – Microsoft Store ja-JP
https://www.microsoft.com/ja-jp/p/rar-opener/9wzdncrdhktr

使い方はとても簡単で、まずソフトを起動すると、下記のようなウィンドウが表示されます。

4つボタンがありますが、主に使うのは上の2つ、「Open RAR」と「RAR → ZIP」くらいだと思います。

Open RAR:RARファイルを解凍する
RAR → ZIP:RARファイルをZIPファイルに変換する

私は今回はファイルの解凍を行いました。
「Open RAR」を押すと、エクスプローラが起動するので、解凍したいRARファイルを選択します。
あとは、解凍が終わるのを待つだけです。
が、ちょっと広告が紛らわしかったりするので、うっかりキャンセルを行わないようにご注意ください。

 

以上、RARファイルの開き方・解凍方法でした。
とりあえず、見慣れないファイル拡張子は調べれば確実に判明するので、遭遇したら調べるくせをつけましょう。

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

SystemctlでSoftEtherVPNをデーモン化する

SoftEtherVPNはたくさんの接続オプションを持っていて、無料のVPNサーバーソフトの中ではおそらく”最もつなげやすい”ソフトではないかなと思います。

そんなSoftEtherVPNですが、Linux版の場合はソースの状態で配布されており、各マシンにダウンロードしてからmakeでビルドする形になっています。
なのでmakeに必要なライブラリさえOS側で用意されていれば、ディストリビューションやアーキテクチャ関係なく使用することができるようになっています。

その関係か、パッケージにはデーモン化のスクリプトは含まれておらず、自力でデーモン化する必要があります。

といっても、作業自体は起動スクリプトを/etc/init.dに置いてchkconfigやsystemctlで有効化すだけです。
起動スクリプトはSoftEtherVPNの公式ドキュメントに記載されています。

#!/bin/sh
# chkconfig: 2345 99 01
# description: SoftEther VPN Server
DAEMON=/usr/local/vpnserver/vpnserver
LOCK=/var/lock/subsys/vpnserver
test -x $DAEMON || exit 0
case "$1" in
start)
$DAEMON start
touch $LOCK
;;
stop)
$DAEMON stop
rm $LOCK
;;
restart)
$DAEMON stop
sleep 3
$DAEMON start
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
esac
exit 0

ところが、今回Ubuntu 18.04のサーバーに組み込んだ所、うまく動作せず。
いろいろ調べたところ、SystemdのUnitファイルで動作させる方法があったのでこちらを試してみました。
(※管理者権限が必要です。)

Ubuntu上でSoftEther VPN Server構築 – Qiita

[Unit]
Description=SoftEther VPN Server
After=network.target network-online.target

[Service]
ExecStart=vpnserverがインストールされているパス/vpnserver start
ExecStop=vpnserverがインストールされているパス/vpnserver stop
Type=forking
RestartSec=3s

[Install]
WantedBy=multi-user.target

上記の内容でUnitファイルを作り、下記の場所に保存します。
/etc/systemd/system/vpnserver.service

保存したら次のコマンドを実行します。

systemctl daemon-reload

これで準備は完了いつも通りに起動します。

systemctl start vpnserver

これで起動したかと思います。
自動起動する場合は

systemctl enable vpnserver

も実行しておきます。

Systemdがいまいちわかりづらいのでinit.dを使っていましたが、これならsystemdネイティブでも使えそうです。
init.dスクリプトでうまく起動できない、という方はぜひ試してみてください。

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

【Android Studio】「Compilation failed to complete」エラーの対処法

今回は、Android Studioでアプリ開発時に発生した「Compilation failed to complete」というエラーの対処法です。
対処法といっても、今回のエラー文は「コンパイルが完了しなかった」という、何が原因なのかが全く分からないようなものだったので、具体的なエラー内容を表示させる方法です。

 

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

Android Studioでエラーログを詳細表示する – RE:ENGINES
https://re-engines.com/2017/05/17/android-studioでエラーログを詳細表示する/

詳細なエラー内容の表示方法ですが、まずAndroid Studioの設定を開きます。

で、サイドメニューの Build, Execution, Deployment > Compiler を選択します。
そしてウィンドウの中央辺りにある Command-line Options に「–info」や「–debug」などのオプションを指定します。

記事内で紹介したサイトでは「–debug」と入力していましたが、それ以外で参考にしたサイトでは「–info」と指定していました。
表示内容を見比べていないので分かりませんが、個人的には「–info」を使っています。

 

以上、Android Studioで詳細なエラー内容を表示する方法でした。
今回ご紹介した「Compilation failed to complete」のエラーのように、それ単体ではエラーの内容が分からない時などにご活用ください。

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

google mapのタイムライン機能

 googleはユーザからこれでもかと情報を集めて、その情報をサービスに活かしています。タイムライン機能は自分がいつどこにいたかの情報を見る機能です。
 使い方はgoogle map左上の三みたいなアイコンをクリックして図のタイムラインをクリック。

 主要な点、おそらく遠出した時の点が描かれる画面になります。左上から日付を指定すると下の画像の様に、具体的なルートとかかった時間まで教えてくれます。

 残したくない、消したいという場合は右下のごみ箱から捨てられます。一方でローカルに保存することもできます。このようなデータを使用しているため、googleのナビは同じルートでも個人差を考慮したより正確であろう移動時間を予測してくれます。
 

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

【android Java】Binary XML file line #8: You must supply a layout_width attribute.

android studioで新しくプロジェクトを作ってrayout.xmlを少しいじった後に試しにビルドをしてみたらいきなりエラーがでました。以下がLogcatで出たエラーです。

 

layout_widthと書いてあるので、一番上のschemeが書いてある下あたりでandroid:layout_width=”match_parent”が抜けていて横幅が不明になっているのだと思われます。一緒にheightの方もつけてあげれば無事動くと思います。

少し昔の参考書にありがちなのですが、layout_xml部分が意外と何も書かれていないことが多く、見逃してエラーを出してしまいがちです。一応gitにも出版元のコードが置いてありますが、ほとんど更新されていなく結局自分で手直しせざるを得ません。バージョン変更に伴いandroid studioやgradleの扱いも少し変わってきてるのでこれから勉強する方はできれば2018出版の参考書を購入することをお勧めします。

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

Ubuntu 16.04 でLivePatch を有効化してみた。

Ubuntu 18.04 でGUI操作が可能になったCaconical LivePatchですが、コマンドラインであればUbuntu 16.04でも適用が可能になっています。
結構手間がかかるかなーという印象だったのですが、やってみたところとても簡単でした。

コマンドラインでLivePatchを有効化するには、UbuntuOneで発行できる専用のトークンが必要になります。

まず、Canonical Livepatch Serviceサイトにアクセスして、トークンを取得します。

サイトにアクセスしたら、無料ユーザーの場合は”Ubuntu User”を選択し、”Get Your LivePatch token”をクリックします。

ログイン画面が出てくるので、自分のUbuntuOneアカウント情報を入力してログイン。
UbuntuOneアカウントを持っていない場合は
”I don’t have an Ubuntu One account”
からアカウントを作成できます。

LivePatchは1アカウントにつき、3台のマシンまで無料利用可能となっているため、注意してください。

LivePatchのページでログインすると、こんな表示が出てきます。

一つ目の欄にあるランダムな文字列がトークンになります。

まず、LivePatchパッケージをインストールします。
端末(Terminal)で次のコマンドを入力します。

sudo snap install canonical-livepatch

LivePatchパッケージのインストールが始まるので、暫く待ちます。
完了したら次のようにコマンドを入力します。

sudo canonical-livepatch enable 先程のトークン

これでLivePatchが有効になるはずです。
念のため、ちゃんと動作しているか確認します。

出力された情報の中に

running: true

と表示されていれば有効になっています。

Ubuntu 16.04でもLivePatchを使用したいという方は、是非参考にしてみてください。

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

Microsoft Azure への落雷被害

台風が過ぎ去った直後の深夜、北海道で地震が発生。
北海道には有名名所ではさくらDCがありますが、回線も直接海側から引き込んでいるようで、電源確保されなんとかなれば継続ができるとか。無事を祈るばかりです。

さくらインターネットの石狩データセンターで障害、北海道地震

海外では Microsoft Azure が落雷により、24時間以上復旧していない状況の様です。

Microsoft Azure米国中南部リージョン、落雷などで冷却が失われ自動シャットダウンが発動。24時間以上障害から復旧せず
Microsoft Azureで障害発生、「謎のメッセージ」が表示されOutlookとSkypeが利用できない状態に

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

【Webサービス】配色に悩んだ時に「単語から連想される色」を挙げてくれる「Picular」

偶然見つけた記事で紹介されていたWebサービスが便利そうだったのでご紹介します。
サイト名は「Picular」で、単語を入力するとその単語からイメージされる色をあげてくれるというサービスです。
Webサイトの制作時など、配色に悩んだ時に活用できそうですね。

サイトのリンクはこちらから。

Picular
https://picular.co/

 

利用方法はとても簡単で、サイトにアクセスすると表示される入力欄に、単語を入力するだけ。
あとは、単語に応じた色を一覧で表示してくれます。

試しに「girl(女の子)」と入力してみるとこんな感じの結果でした。

思ったよりも、大人っぽいというか、シックな色合いが並びました。
個人的には、もっとピンクとかオレンジなどの華やかな明るい色が並ぶかと思いましたが…ちょっと意外な結果となりましたね。

ちなみに、検索する単語は日本語でもエラーは出ませんでした。
ただ、3文字以上を入力する必要があるので、英単語を前提としているようですね。

 

色々試してみましたが、大抵は想像通りの色が表示されるようでした。
ただ、時折何故?とも思える色がヒットすることもあり、例えば「moon(月)」と入力した際、オレンジ色が入っていたのは少し意外でした。
補色とかが関係しているのかな?

ということで、もし配色に困ったら、こちらのサイトに頼ってみるのもいいと思います。
特に、Webサイト制作の時など、どの色をベースカラーにするか迷っているときに使えそうですね。
候補がたくさん表示されるのも嬉しいです。

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