カテゴリー
SugiBlog Webエンジニアのためのお役立ちTips

Geocoder APIを利用した座標変換

Geocoder APIを使えば住所から座標を取得することができます。
今回はJavaScriptではなくHTTPリクエストで座標を取得する方法をご紹介します。

取得するデータはJSON形式で受け取るようにしています。
使用する言語はPHPです。

まずはリクエストするURLとAPIキーを宣言

$googleapis = "https://maps.googleapis.com/maps/api/geocode/json";
$api_key    = "YOUR API KEY";

続いてパラメーターを追加していきます。
検索する住所を追加

$googleapis .= "?address=" . $address;

国を指定(同じ名前の地名が中国等にあるとそちらの座標になってしまうことがあります)

$googleapis .= "&components=country:JP";

APIキーを設定します

$googleapis .= "&key=" . $api_key;

file_get_contents関数を使ってデータを取得します。

$data = file_get_contents($googleapis);

返ってきたJSONデータを解析して座標を取り出します。

$json = json_decode($data);

$lat = $json->results[0]->geometry->location->lat;
$lng = $json->results[0]->geometry->location->lng;

if( $json->status == "OK" ) {
    echo $lat . "," . $lng;
}

詳細な仕様は公式ドキュメントを参照ください。
https://developers.google.com/maps/documentation/geocoding/intro#GeocodingRequests

1,236 views

Realm.addでコンパイルエラー

Realm.addメソッドで以下のようなコンパイルエラーが出ました。

'add(_:update:)' is unavailable: Pass .error, .modified or .all rather than a boolean. .error is equivalent to false and .all is equivalent to true.

どうやら第2引数にbool値を与える仕様が変わった模様。
第2引数に与える値はRealm.UpdatePolicyだそうで、
これまでfalseにしていた場合は.error、trueにしていた場合は.allを指定すればいいようです。

Xcode 11.2.1
Swift 5

802 views

デスクトップのアイコン名の影を消す

Windows 10でデスクトップのアイコン名の影を消す方法です。
システムのプロパティを開き、[詳細設定]タブの[パフォーマンス]の[設定]をクリックします。
開いた[パフォーマンスオプション]の[視覚効果]タブのチェックボックスリストに
「デスクトップのアイコン名に影を付ける」チェックを外す。

1,458 views

Windows更新プログラムのアンインストール

Windowsの更新プログラムは[コントロールパネル]-[プログラムと機能]-[インストールされた更新プログラムを表示]でアンインストールすることができます。
またコマンドプロンプトからもコマンドでアンインストールできるので、その方法をご紹介したいと思います。

まず、管理者権限にてコマンドプロンプトを起動します。
そして以下のコマンドを入力します。

wusa /unintall /kb:****

****はアンインストールしたい更新プログラムの番号です。
※wusa(wusa.exe)とはWindowsUpdateのスタンドアロンインストーラーです。

ただし、重要な更新プログラムはアンインストールできません。

上記のやり方でアンインストールできない場合があります。
どういった場合かというとネット経由でインストールしたOfficeの場合です。

そのため、何か不具合があってアンインストールしたい更新プログラムがあっても、ネット経由でインストールしたOfficeの場合、KB:****としては適用されていないそうなんです。

ではどうすれば良いのか??
コマンドでOfficeのバージョンをロールバック(ダウングレード)させる必要があります。

例)バージョンを15.0.5163.1000に戻したい。
以下のコマンドを実行します。

cd c:¥Program Files¥Microsoft Office 15¥ClientX86
officec2rclient.exe /update user updatetoversion=15.0.5163.1000

officec2rclient.exeの場所はバージョンによって異なります。
上記の例ではOffice2013の場合です。

1,161 views

Windows10でスタートアップ(起動)に問題発生

Windows10にて、起動時や起動してしばらくするとブルースクリーンが表示されるエラーが発生しました。

エラーの内容は

お使いのPCまたはデバイスは修復する必要があります
必要なファイルが見つからないか、ファイルにエラーがあるため、アプリケーションまたはオペレーティング
システムをロードできませんでした。

というものです。
私が遭遇したのはwinloadに関するエラーでした。

解決方法

スタートから設定を選択。

Windowsの設定画面で[更新とセキュリティ]をクリック

左のメニューから[回復]をクリック

右から「PCの起動をカスタマイズする」のところの[今すぐ再起動]をクリック

「オプションの選択」画面が表示されたら[トラブルシューティング]をクリック

「トラブルシューティング」画面で[詳細オプション]をクリック

「詳細オプション」画面で[自動修復]をクリック
自動修復を試してみます。

自動修復で解決できない場合は[コマンドプロンプト]を実行します。

「コマンドプロンプト」が表示されたら、以下のコマンドを実行します。

X:\windows\system32>bcdboot c:\windows /s c:

「c:\windows」は、Windowsシステムのルートの場所です。「c:」はブートパーティション。

ブートファイルは正常に作成されました。と表示されればOK。
私の場合、これでWindowsの起動に関するエラーが解消しました。

644 views