動画のBGMとしてお世話になっているサイト。
バッハから滝廉太郎やマーラーまで。音質も中々だと思う。
動画のBGMとしてお世話になっているサイト。
バッハから滝廉太郎やマーラーまで。音質も中々だと思う。
Google Driveには色々とお世話になっているけど、気になっていたのが初期設定では同期フォルダの名称が「Google Drive」となっていてGoogleとDriveの間にスペースがあること。これってプログラミングをやる人、それがプログラム開発でも統計分析でデータとかを読み込む際でも非常に煩わしい。なので同期フォルダの名称を変更することにした。
同じやり方で同期フォルダ自体を変更することも可能だと思う。
まずはGoogle Driveのアプリケーションを開いて設定を選択
設定からアカウントを選択肢、アカウントの接続を切断する。
接続の解除をしたらフォルダ名を「Google Drive」から「GoogleDrive」に変更。まぁ、フォルダ名は別にGoogleDriveに限定する必要はないけれど。
その後、接続の解除をした時にログアウトとなっているはずのGoogle Driveに再度ログイン。
次へを三回選択
下の画面が現れたら「完了」を押さないで「同期オプション」を選択。これは凄く大事!
同期したいフォルダを選択(今回の場合はGoogleDrive)。
ダイアログが現れるのでフォルダ内の内容で同期して良ければ続行
フォルダ内のもの全てを同期しても良いし、そうでない場合は同期したいフォルダを選択する。
同期が開始されたら後は終了を待つだけ。ファイルを比較しているというメッセージが出る。
ファイル数が多ければそれなりに比較に要する時間もかかるけど、手順自体は単純だと思う。
gitを使い始めたのは比較的最近だ。博士論文の時に使っていればなぁ。Latex、StataとRのソースコードの管理は大分楽だったはず。
まぁ、そんなこと言っても仕方ないけど。で本題。gitだけど初めはGithubを使っていた。でもここってプライベートのレポジトリの作成は有料版のみで、また、その他の理由もあり他の方法がないかと模索。
で考えついたのがオンライン・ストレージをレポジトリとして利用出来ないかということ。私の場合、Google Driveは大学のお陰でほぼ無制限で使えるのでこれを活用しない手は無い。他からのアクセスもGithubや他のサービスと比べて楽そうだし。
ここではGoogle Driveを使って紹介するけど、他のストレージ・サービスでも同じ方法が使えるはず。One DriveとかDrop Boxとかね。
gitの説明は省くとしてWindowsの場合、gitをインストールするところから始まる。ココでダウンロード出来ます。Cygwinにもgitが含まれているらしいけど、最近使ってないんだよなぁ。
gitの準備が出来たら次にTortoiseGitをダウンロードしてインストール。
ここからが本題かな。
まずは管理したいプロジェクトが保存してあるフォルダをローカル・レポジトリとする。
フォルダを選択して
右クリックすると
上の画像の様に「Git ここにレポジトリを作成」という選択肢があるのでこれを選択。その際、以下のダイアログが表示されるはず。「Bareを生成」という項目のチェックはされていないと思うけどそのままで。その理由は括弧内を見れば分かるはず。これは作業ディレクトリなので。
OKを押すと次のメッセージが表示される。
フォルダを開いてみると
.gitというフォルダが作成されていることに気付く。このフォルダ以外の全てのファイルを選択して
右クリックを押すと
追加という項目が現れるはずなので選択する。
それから「全てを選択/解除」にチェックを入れて
OKを押す。
追加が無事終了したらコミットへ。
メッセージ欄に何かしらの記入をする必要がある。私は日付と変更内容を記入する様にしている。コミットしたらプッシュ画面が現れるはず。これを一旦キャンセルして消す。
次にローカル・レポジトリのフォルダがあるディレクトリに戻る。そこで何も選択しないで右クリックを押すと
「Gitクローン(複製)という項目を選択する。すると下記のウインドウが表示される。URLにローカル・レポジトリのフォルダのアドレス、ディレクトリにはGoogleDriveのフォルダ内に作成したリモート・レポジトリのフォルダを選択。通例としてはローカル・レポジトリのフォルダ名に「.git」を付ける。ただ、これは任意。
ここで気をつけなくてはならないのが、今回は「Bareレポジトリにクローン」にチェックを入れること。リモート・レポジトリは作業ディレクトリではないから。ここのチェックを忘れないように!
こういうこと。これでやっとOKを押せる。
ウインドウを閉じる。最後にローカル・レポジトリからリモート・レポジトリへのプッシュを行う。ローカル・レポジトリのフォルダを選択して右クリック、TortoiseGitを選択するとプッシュの選択肢が現れる。
下記のウインドウが現れたら「リモート」のディレクトリを指定。勿論、先程作成したリモート・レポジトリのフォルダを選択。
下のウインドウが出るので
URLにリモート・レポジトリのディレクトリを記入。
OKを押すとプッシュ画面が現れるので
再度OKを押す。しっかりプッシュ出来れば成功!
リモート・レポジトリにあるものをローカルに引っ張って来るには逆の方法を使えば良い。リモート・レポジトリから新規に指定したローカル・ディレクトリにコピーする形となる。
色々な手順を踏まなければならないけれど、Google Driveやメジャーなストレージ・サービスに限定されることもなく、手軽にGitを使えるのでこの方法は重宝している。
アンドロイド・アプリにAdMobを実装する際に既にアプリがGoogle Playに登録されていることを前提としていることが多いけど、これが少しやりずらく感じる。というのも登録してからAdMobの広告とアプリをリンクしようとしても、AdMobのデータベースに登録したアプリが現れるのに二、三日要するからだ。全ての作業を一度に行いたいと思うせっかちな人には向かない。。
ということで、広告の実装からアプリ登録前までに行う方法を紹介。この方法だと、その後アプリを登録して、リンクの作業を数日後に行えば良いのでAdMobの実装をアプリ登録数日後まで待つ必要がない。
事前準備として
が求められる。
AdMobのサイトに行きまずは収益化ボタンを押す。
収益化のページ上で「新しいアプリを収益化」ボタンを押す。
下のページが現れるので
「アプリを手動で追加」を選択してアプリ名を記入。それからプラットフォームを選択。
「アプリを追加」ボタンをクリック。
広告のフォーマットを選択。それから広告ユニット名の記入。私は単純にアプリ名を記入しているが広告を2つ以上作成する場合は、各々分かりやすい名前を付ける必要がある。
保存したら次の画面が現れるはず。広告ユニットIDを取得出来る。このIDが後ほど必要となる。
「FIREBASEにリンク」をクリック。スキップすることも可能らしいけれど、ここではFIREBASEを利用することとする。
パッケージ名を入力。
これまでに同じパッケージ名を用いたプロジェクトをFirebaseで作成しているなら次の選択肢が現れる。なければプロジェクトを新規作成する。
次に1.の「こちら」をクリックして設定ファイル(google-services.json)をダウンロード。
Androidプロジェクトにこのファイルを取り込む。Android StudioでProjectを選択。
先程保存したgoogle-services.jsonをコピーして
Android Studio上の「app」を選択した上でペーストする。
google-services.jsonが「app」下に配置されているはず。
「Project」から「Android」に変更して
Projectレベルのbuild.gradleを開く。
1 |
classpath 'com.google.gms:google-services:3.0.0' |
上記のコードを記入。
こんな感じ。
それからAppレベルのbuild.gradleを開く。
まずはこれを
1 |
compile 'com.google.firebase:firebase-ads:10.0.1' |
ここに記入。それから
1 |
apply plugin: 'com.google.gms.google-services' |
を最後の行として記入。
build.gradleを同期する。
次にstrings.xmlを開き
1 |
広告ユニットID |
先程取得した広告ユニットIDを含むコードを挿入。
広告を入れたいアクティビティのレイアウト・ファイルを開いて
1 |
xmlns:ads="http://schemas.android.com/apk/res-auto" |
を記入。
AdViewのコードも追加する。
1 |
続いて広告の読み込みに必要なネット接続のパーミッションの取得をマニフェスト・ファイルで行う。
この二行を追加。
1 |
広告を表示したいアクティビティ(.java)にコードを記入。
まずはインポートするコード。
1 2 3 |
import com.google.android.gms.ads.AdRequest; import com.google.android.gms.ads.AdView; import com.google.android.gms.ads.MobileAds; |
それからAdViewオブジェクトの宣言。
1 |
private AdView mAdView; |
最後にonCreate内に以下のコードを追加。
1 2 3 4 |
mAdView = (AdView) findViewById(R.id.adView); AdRequest adRequest = new AdRequest.Builder().build(); mAdView.loadAd(adRequest); MobileAds.initialize(getApplicationContext(), getResources().getString(R.string.banner_ad_unit_id)); |
分かりやすい場所であれば何処でも。
エミュレータで広告が表示されるか確認してみる。
アプリをGoogle Playに登録してから数日後に広告とアプリをAdMob上でリンクする。
「アプリのリンクを設定」をクリックして
アプリを検索して見つかれば選択して終了。色々あるけど慣れれば簡単!
グアテマラ市内に位置するカミナル・フユ遺跡。学者がキチェ語の名前を付けたそうでその過程にはあまり賛同出来ない。丘(juyub’)が多いことはそうなんだろうけど。
地味と言えば地味だけど、遺跡として、学術的な価値は結構高いと思う。