カテゴリーアーカイブ OS

村上 著者:村上

【Cordova】アプリ内にAdMobのバナー広告を導入する方法

タイトル通り、Cordovaで開発したアプリにバナー広告を入れる方法です。
ちなみに、AndroidとiOSの両方に対応しています。
本当はネイティブ広告という、Twitterのタイムラインで表示されるような、記事っぽくみえる広告を導入したかったのですが、どうやらプラグインが対応していないようです。

今回使ったのは、cordova-plugin-admob-free というプラグインです。
GitHubはこちら。

GitHub – ratson/cordova-plugin-admob-free: Cordova AdMob Plugin
https://github.com/ratson/cordova-plugin-admob-free

 

まずインストールは下記のコマンドをコマンドプロンプト等で実行します。

cordova plugin add cordova-plugin-admob-free --save

インストールが終わったら、下記のコードをプログラムに記述するだけ!
なお、私の環境では、index.js というファイルに記述しました。

// AdMob 広告ID
var admobid = {}
if (/(android)/i.test(navigator.userAgent)) {  // Android
    admobid = {
        banner: 'ca-app-pub-3940256099942544/6300978111'
    }
} else if (/(ipod|iphone|ipad)/i.test(navigator.userAgent)) {  // ios
    admobid = {
        banner: 'ca-app-pub-3940256099942544/2934735716'
    }
}

document.addEventListener('deviceready', function () {
    // バナー広告表示
    admob.banner.config({
        id: admobid.banner,
        isTesting: true,  // テスト広告
        autoShow: true,
    })
    admob.banner.prepare()
}, false);

コードの上の方で、アプリを使っている端末が Android なのか iOS なのかを取得しています。
Android と iOS では、広告のIDが異なるので、この処理も重要です。

なお、広告のIDはテスト用のものを使っています。
なんでも、動作を確認している段階のアプリで本番用の広告IDを使うと、最悪の場合アカウント停止になることもあるとのことだったので…。
絶対にそれは避けたいので、慎重に。

ちなみに、広告の種類は他に「インタースティシャル」という画面に大きく表示される広告と、あとは「動画広告」もあります。
このあたりは、お好みで使い分けてください。
…が、個人的に画面全部を覆うような広告は嫌いなので、使うとすればバナー広告かな。

 

以上、アプリ内に広告を入れる方法でした。
アプリの利用者数が増えてきたら、導入を検討していきたいと思います。

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

【Excel】日付を曜日付きで表示する方法

Excelを使っていて、例えば下の画像のように、「4月1日(日)」と、曜日まで表示したいときの作業です。

要は、データとしては「2018/04/01」と入力されているものを、「4月1日(日)」の形式で表示するということです。
日付の表示形式は案外簡単に変えられるのですが、曜日の表示はひと手間必要です。

今回は、こちらのサイトを参考にさせていただきました。

Excelで日付から自動的に曜日を入力する – @IT
http://www.atmarkit.co.jp/ait/articles/1708/02/news014.html

 

まず、表示形式を変えたいセルで右クリックし、メニューから「セルの書式設定」をクリックします。

すると、ウィンドウが表示されるので、「表示形式」タブの左のメニューから「ユーザー定義」をクリックします。

そして、「種類」の欄で、曜日を表示したいところに「aaa」を入力します。
私の場合だと、「“(“aaa”)”と入力したため、実際の表示では「(日)」となります。

なお、表示形式は他にもあるので、お好きなものをチョイスしてください。

表示形式コード 曜日の表示形式
aaa 月、火、水、木、金、土、日
aaaa 月曜日、火曜日、水曜日、木曜日、金曜日、土曜日、日曜日
ddd Mon、Tue、Wed、Thu、Fri、Sat、Sun
dddd Monday、Tuesday、Wednesday、Thursday、Friday、Saturday、Sunday

作業としては以上です!

 

なお、今回紹介したサイトに、別のセルに関数を使って曜日のみを表示する方法も載っているので、場合によって使い分けてください。
曜日を表示したいセルに、次の式を入力すればOKです。

=TEXT([曜日を表示したい日付が入力されたセル],"aaaa")

どちらも、入力した日付で自動的に曜日が算出されるので、凄く便利です。
また、入力間違いもなくなるので、曜日を表示したいときは積極的に使いたいと思います。

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

【Windows】空き容量があるUSBメモリにファイルをコピーできない時の対処法

タイトル通り、Windowsのパソコンで、空き容量は十分あるはずのUSBメモリに何故かファイルをコピーできない時の対処法です。
なお、エラーメッセージは、「ファイルが大きすぎます。ファイル’[ファイル名]’は大きすぎて、対象のファイルシステムに入りません。」というものでした。

こちらの対処法について、参考にさせていただいたサイトはこちら。

USBメモリや外付けHDDに空き容量があるのにファイルコピーできない時の解決法|データ復旧のパソコンサポートやまもと
https://datarescue.yamafd.com/howto_solve_unable_copy/

 

なお、データがコピーできない原因ですが、USBメモリのフォーマット形式により、1ファイルの最大サイズが 4GB までという制限があるからとのことでした。
コピーしようとしていたファイルが 4GB 以上の動画データだったので、まさにこの制限に引っかかっていました。
で、こちらの問題は USBメモリのフォーマット形式を変更すれば、大きいファイルでもコピーをすることができます。

さて、USBメモリのフォーマット形式の変更方法ですが、こちらを行う前に、まずメモリ内に保存されているファイルを別の場所に移動させて保存します。
フォーマットをするとすべてのデータが消えてしまうので、この作業は忘れずに!

データが保存出来たら、まずエクスプローラーから、フォーマット形式を変更したい USBメモリを右クリックします。
そしてメニューから、「フォーマット」を選択します。

すると、下のようなウィンドウが表示されるので、その中の「ファイル システム」を「ExFAT」に変更します。

あとは、「クイックフォーマット」にチェックが入っていることを確認して、「開始」をクリックします。

作業はこれで終了!
あとは、コピーしたいファイルを通常通りにコピー&ペーストすれば、今度は問題なくコピーができるはずです。
ただし、ExFAT 形式はデータが壊れやすいという欠点があるとのことだっため、重要なファイルを入れないほうが良いかもしれません。
そのあたりは、記事冒頭で紹介した参考サイトをご確認の上、自分の環境にあった形式を選択してください。

 

以上、USBメモリにファイルがコピーできない時の対処法でした。
なかなか 4GB 以上のファイルを扱う機会がないもので、空き容量はあるのにコピーできない!という状況には少し焦りましたね。

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

【Cordova】Android・iOSアプリを終了させる処理

Cordovaのアプリを開発中、プログラムからアプリを終了させる処理を行いたかったので、やり方を調べました。
が、結局アプリを終了しない処理で落ち着いたんですけどね。

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

monaca(cordova)でアプリを終了させる(Androidのみ)
https://blog.mitsuto.com/cordova-exit

 

で、アプリを終了させる処理は、実はこれだけ。

// アプリを終了する
navigator.app.exitApp();

アプリを終了させたいタイミングで、上記の一行を書くだけです!
思ったよりも簡単でした。

ですが、この処理は iOS では動作しません。
なので、下記のプラグインをインストールする必要があります。

GitHub – FRD49/iOS-ExitApp: navigator.app.exitApp() on iOS
https://github.com/FRD49/iOS-ExitApp

インストールするときは、下記を実行します。

// iOS-ExitApp のインストール
cordova plugin add com.frd49.cordova.exitApp

// 上のコマンドがエラーになる場合はこちらを実行
cordova plugin add https://github.com/FRD49/iOS-ExitApp.git

プラグインをインストールする時にエラーが発生した場合は、下のコマンドを実行してください。
私の環境では、上のコマンドではインストール元が見つからないとかで失敗しました。

プラグインの追加が完了したら、アプリを再ビルドして、実機で実行すればOKです。
これで、iOS でも「navigator.app.exitApp();」を使ってアプリを終了できるようになります。

 

以上、プログラムからアプリを終了させる方法でした。
が、確かにアプリは終了できるのですが、終了時の挙動が強制終了の時と似ている、というか同じなので、終了する前に「アプリを終了しますか?」の確認ダイアログは必須ですね。

  • この記事いいね! (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)
村上 著者:村上

【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)
著者:ym

スマートフォン機種変

スマートフォンを機種変しました。

電池の持ちが悪くなって来てたのと。電池が 60 % 程度で突然電源が落ちる劣化電池の持病が頻発する様になったのがきっかけ。サーバ監視や、VPN、リモートSSH操作端末、SIPボタン電話、など非常に重要な端末化しているので、結構困るんですよね。

ちょうど HTC U11 の SIM フリー・Felica・NFC 対応の赤色限定モデルが予約発売開始されていたのですが、高くて手がでませんでした。

なので、ヤフオク。

IMEIだけ◯印のを確認して、8000 円で今と同じ機種の色違い中古を購入しました。

いままでは HTV31 の紺色使っていましたが、今度は HTV31 の赤です。

 

とどいたのは結局SIMロック状態品でした。こまったことに、先日から各キャリアが SIM フリー化対策で、自信の購入履歴が無いと SIM フリー化はしてくれなくなったのでね。どうにか root 化、SIM フリー化出来たので移行無事完了!

さて、古い機種側のバッテリー交換の為に、分解にはいります。

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

screenとshutdown

 2018/4/16本日、screenからexitするつもりがscreen中でshutdownコマンドを実行してサーバを落とす事故を起こしてしまいました。そんなわけでlinuxのscreenコマンドとshutdownコマンドについて書くことにしました。screenについてはこちらの記事こちらの記事で詳しく話されています。
screen
 screenは端的に言えば別画面を作るコマンドです。ターミナルと同じ機能を持つ別のプロセスが走り出すような感じです。
参照:SCREEN Quick Reference
よく使う操作

新たにscreenを作る screen
名前を付けてscreenを作る screen -S <name>
現在存在しているscreenをリストアップ screen -ls
指定した<id|name>のscreenに移動 screen -rx <id|name>
screenを動作させたまま抜け出す screen中でCtrl-a d
screenを消して抜け出す screen中でexit

 
shutdown
 シャットダウンを行うコマンドです。ただ命令するだけでも問答無用でshutdownコマンドが実行され出しますがコンピュータのシャットダウンが行われるまで多少猶予があります。CentOS7.4.1708のデフォルト設定におけるオプションなしの猶予は1分でした。特に覚えておきたい大事な操作は’shutdown -c’で実行できるshutdown処理の中断命令です。shutdownはCtrl+zやCtrl+cを打ち込んでも走り続けるため、シャットダウンを中止するためにはshutdown -cを入力する必要があります。一応shutdownを実行した際に「use ‘shutdown -c’ to cancel」と文面がでますが、焦り出す上に英語に親しくない私みたいな人は読み取れないことがあると思います。気を付けましょう。

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

【Xcode】実機でアプリを起動できない「Could not find Developer Disk Image」エラーの対処法

Xcodeでアプリを開発中に、実機でiOSアプリの動作確認をしようとしたときに遭遇した「Could not find Developer Disk Image」というエラーの対処法について。
こちらのエラーは、iOS端末をアップデートした際、そのバージョンに対応する Disk Image がXcodeになかったために発生するものです。
つまり、iOSのバージョンが新しく、かつXcodeのバージョンが古いときに発生します。

したがって、対処法としては、Xcodeをアップデートして、最新バージョンにするのが一番手っ取り早いです。

 

が、何らかの理由で、Xcodeを更新したくない場合の対処法についてはこちらから。
今回は、こちらのサイトを参考にさせていただきました。

【iOS】端末をアップデート後、Xcodeで実機に書き込めなくなった場合 – Qiita
https://qiita.com/Hakota/items/59b4247a203e2639f8c9

まず、下記のサイトから最新のXcodeをダウンロードしてきます。
https://developer.apple.com/downloads/index.action#
ここで注意することは、Beta版ではない最新バージョンのものをインストールすること。
なお、ダウンロード前に、既存のXcodeの名称を Xcode[バージョン] などに変更しておきましょう。
そうすると、既存のバージョンのXcodeを残したままで、最新のXcodeをインストールできます。

ダウンロードできたら、最新のXcode と、すでにインストール済みのXcode があるかと思うので、それぞれのアイコン上で右クリックして、 パッケージの内容を表示します。
開けたら、下記の場所まで移動します。

Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/

すると、下の画像のように、フォルダがずらっと並んでいるかと思います。

で、この一覧を確認すると、今まで使用していた Xcode のフォルダ一覧には、iOS端末のバージョン名のフォルダがないと思います。
なので、最新の Xcode の方から、不足しているフォルダをコピー&ペーストしましょう。

あとは、ファイルを閉じて、Xcodeを再起動すれば完了です!
端末を接続し、実機でアプリを起動すれば、無事実行されるかと思います。

 

ということで、OSのバージョンをアップデートした実機で、iOSアプリを起動できないときの対処法でした。
私の環境ではこれで動いたので、同じことでお悩みの方は是非試してみてください。

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

iPhoneでいきなり「SIMはメッセージを送信しました」と表示される件

車ではスマートフォンはカーナビになるようにエアコン吹き出し口の所に設置できるようにしています。
先日夜に車で走っている際にいきなりiPhoneの通知で「SIMはメッセージを送信しました」と表示されたのを目撃!
その後停車中に確認しようと思ったのですが通知は跡形もなく消え・・・何が起こったのかわかりませんでした。
はっきり言っていきなりSIMがスマートフォンのデータを送った!なんて通知が来たら怖すぎます。

Twitterで検索してみると同じ現象が起こっている人が多数いることも分かりました。

https://platform.twitter.com/widgets.js

https://platform.twitter.com/widgets.js

どうもdocomoユーザだけが発生しているようです。
更に調べると対処法を書いている方がいらっしゃいました。

【iPhone】「SIMはメッセージを送信しました」の意味と対処方法
http://sbapp.net/appnews/app/upinfo/ios11/sim-message-send-78595
こちらの記事によれば

SIMがキャリアアップデートのサーバーに接続をした際に、何らかの通信障害が生じると「SIMはメッセージを送信しました」と画面に表示されることがあるとのこと。

という事らしいです。
なのでスマートフォンがおかしくなったとかウィルスとかそういう危険なものではなさそうですね。
対処法も書かれていましたので同様の現象が起こる方は「キャリアアップデート」の確認をしてみてください。
ちなみに私は電源を1度OFFにしたらそれ以降は1度も出てこなくなりました。

今思うとスマートフォンを触ってるときに振動だけして何も通知が無いという事が何度もあり、「SIMはメッセージを送信しました」が原因だったのかもしれませんね。

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