fc2ブログ

MacからGCPにファイルをバックアップ

最近GCPを触り始めてます。

以前からRaspberryPIでインコの写真を自動で撮影しているのですが、そのファイルサイズが結構な量に。なので、GCPのストレージにバックアップしておこうと思い立ち。

こちらの記事を参考に。

お手軽便利!!Google Cloud Storageにファイルをバックアップする方法 | Code & Business

ただ、gsutilのインストール方法が変わっていたようなのでこちらを見ながらインストール。プロジェクトやデフォルトリージョンを設定。

gsutil をインストールする  |  Cloud Storage  |  Google Cloud

あとは、最初のリンク先のシェルをお借りして実行。お手軽にバックアップできますね。あとはcronで自動化すれば。


実験@2019/09/15 06:44   | 0 comments | 0 trackbacks |

[Objective-C]iPhone XでUINavigationBarに隙間ができる

前に対策したはずだったのですが。

NavigationBarとStatusBarの隙間を埋める - ビギグラマーのノート

上のリンク先の対策をしても隙間が出てしまう…。

こちらを参考にしたら解決しました。

Extend the navigation bar to status bar - merocode

UINavigationBarを実装するViewControllerで以下のメソッドを実装。

- (UIBarPosition)positionForBar:(id)bar {
return UIBarPositionTopAttached;
}


Headerファイルでプロトコルを宣言。

@interface GroupsViewController : UIViewController


UINavigationBarの実装で、delegateを自身(ViewController)に設定。

self.navBar.delegate = self;


実験@2019/05/05 11:43   | 0 comments | 0 trackbacks |

[Objective-C]iOS11になったらUIBarButtonItemをタップ後、画面遷移から戻ってもハイライトされたままになってた...

なんでだーと思って色々調べていたら。

ios - UIBarButtonItem will be always highlight when I click it - Stack Overflow

コメントにあったこちら。

Still not fixed under 11.2.1 :( I set a small workaround.. if(button.isEnabled == true) {button.isEnabled = false; button.isEnabled = true} and this does fix it.

これを頼りにviewWillApperにこれを書いてみた。settingButtonがUIBarButtonItemです。

settingButton.enabled = YES;
settingButton.enabled = NO;
settingButton.enabled = YES;

そしたら回復しました。が、バグとのことで応急処置ですね。


実験@2018/03/11 14:57   | 0 comments | 0 trackbacks |

いくつかのサイトをクローズしました。

読書の定義」以外の実験サイトをクローズしました。


実験@2017/12/18 21:13   | 0 comments | 0 trackbacks |

d3.js v4.0で色指定に「d3.scale.category10()」を使うと「d3.scaleがundefined」エラー

なんでエラー出るのかなと思って探したらこちら。

What is the d3.js v4.0 equivalent for d3.scale.category10()? - Stack Overflow

Instead of
d3.scale.category10()
use
d3.scaleOrdinal(d3.schemeCategory10);

d3.scale.category10()じゃなくて「d3.scaleOrdinal(d3.schemeCategory10)」を使えだそうで。これでうまくいきました。


実験@2017/07/12 21:06   | 0 comments | 0 trackbacks |

macOS Sierra環境でAdMob導入(Objective-C版)

iAd使えなくなったんだよなーと機能だけオフにして放置していましたが、年末休みにちょっとトライしてみました。

基本はこちらを参考にさせていただきましたが、いくつかつまづいたのでメモがてら。

iOS AdMob 実装 方法 - Amarronの日記

AdMobのアカウント作って、アプリを登録したとこまでは問題なかったのですが、CocoaPodsの導入でエラー。

$ pod init
$ vi Podfile

でファイルを修正。

# Uncomment the next line to define a global platform for your project
source 'https://github.com/CocoaPods/Specs.git'
# platform :ios, '9.0'

target 'アプリの名前' do
# Uncomment the next line if you're using Swift or would like to use dynamic frameworks
use_frameworks!
# Pods for アプリの名前
pod 'Firebase/Core'
pod 'Firebase/AdMob'
end


で、インストールと。

$ pod install
Unknown option: -C
usage: git [--version] [--exec-path[=GIT_EXEC_PATH]] [-p|--paginate|--no-pager] [--bare] [--git-dir=GIT_DIR] [--work-tree=GIT_WORK_TREE] [--help] COMMAND [ARGS]
Unknown option: -C
usage: git [--version] [--exec-path[=GIT_EXEC_PATH]] [-p|--paginate|--no-pager] [--bare] [--git-dir=GIT_DIR] [--work-tree=GIT_WORK_TREE] [--help] COMMAND [ARGS]
Setting up CocoaPods master repo
Unknown option: -C
usage: git [--version] [--exec-path[=GIT_EXEC_PATH]] [-p|--paginate|--no-pager] [--bare] [--git-dir=GIT_DIR] [--work-tree=GIT_WORK_TREE] [--help] COMMAND [ARGS]
[!] Unable to add a source with url `https://github.com/CocoaPods/Specs.git` named `master-1`.
You can try adding it manually in `~/.cocoapods/repos` or via `pod repo add`.

あら、失敗。

で色々探していたら行き着いたのがこちら。

pod install で Unable to add a source と言われました。 - Qiita

こちらにあったように手動で追加しようとしたのですが。

cd ~/.cocoapods/repos
git clone https://github.com/CocoaPods/Specs.git master

今度はこんなエラー。

$ git clone https://github.com/CocoaPods/Specs.git master
Initialized empty Git repository in /Users/yayoi/.cocoapods/repos/master/.git/
fatal: https://github.com/CocoaPods/Specs.git/info/refs download error - The requested URL returned error: 403 Forbidden

さらにさまよいます。その前に試しにブラウザで上記URLにアクセスしてみたら「Please upgrade your git client.」とのこと。バージョンを見てみたら「1.6.0」でした。なので、こちらを参考にアップデート。ダウンロード&インストールですが。

OSX で Git をバージョンアップする - Qiita

この後で2.10.1になっていることを確認。

$ git --version
git version 2.10.1

無事にリポジトリの追加pod installも成功しました。

その後のコーディングですが、ここでも一個つまづきました。そもそもどうimportするんだろう…。こちらを見ながら実装していたのですが。

スタートガイド  |  AdMob by Google  |  Firebase

@import GoogleMobileAds;

って書けばいいと言われてもこんな文法あったっけと思いつつ書くとエラー。で探してみたらこちらに。

アプリ開発メモ: Xcode6 AdMob SDK v7.3.1 実装で困った。Use of @import when modules are disabled

要は、@importを使えるようにしなさい。ということ。単純なエラーで良かったです。

Enable Modules(C and C-Objective-C) ------> NO を YES にしなさい。


これでようやく動きました。あ、テスト用の広告IDの時は問題ないようですが、実際のアプリと関連づけられている広告IDを使う際にはAdMobにアプリ登録後にダウンロードした「GoogleService-Info.plist」をプロジェクトに追加するよう有りとのことです。


実験@2016/12/29 11:54   | 0 comments | 0 trackbacks |

iStat NanoやiStat Proでプロセスが表示されなくなった

結構重宝しているWidgetだったので困っていました。

で、ググってみたらドンピシャ。

Fix iStat Nano or iStat Pro Processes in Mountain Lion | Refined Robot

事前の準備として、Mountain Lionではホームディレクトリ配下のライブラリが非表示になっているので以下の手順で表示させる。

  1. ターミナルを起動
  2. 以下のコマンドを実行

    chflags nohidden ~/Library


で、表示されたライブラリにアクセス。
  1. Widgets内にある「iStat Pro.wdgt(iStat NanoならiStat Nano.wdgt)」を右クリック、して「パッケージの内容を表示」を選択。
  2. iStat Proの場合、Wide.jsかTall.jsをテキストエディットで開く。これは画面表示モードによりけり。
  3. ファイル内を「PID|」で検索。
  4. ヒットすると二箇所あるので「PID|$1」を「PID| $1」に書き換える。$の前に半角スペースを挿入。
    保存して閉じる。
  5. Widgetを追加し直す。

全体手順のスクリーンショットはこちら。


実験@2013/08/10 15:18   | 0 comments | 0 trackbacks |

iOSの「引っ張って更新」するクラスを導入してみようとした

Objective-Cネタです。

こちらでも紹介されている「EGOTableViewPullRefresh」なのですが、ARCに対応していないので新規にプロジェクトに追加したりするとエラー吐きまくり。releaseを削除しまくるだけでもダメみたい。

「引っ張って更新」するクラス

リンク先ではARC対応された物が公開されていましたが、自分はそれに気付かずじまい。で、自分はこちらを参考にさせていただいて、上記のをARC非対応にしてしまいました。

How to include non ARC file in your ARC project | The Agile Warrior

要はGithubから追加したソースに対して、Build phaseの画面で「-fno-objc-arc」オプションを追加。これで動作しました。

xcode


実験@2013/06/02 21:49   | 0 comments | 0 trackbacks |

もうxAuthの申請なんてTwitterにする必要無かったんだ!とseach APIでのハマりどころ。

まー、iOSのTwitter frameworkの便利さと言ったら。

先日こう言ったことを言ってましたが、数日したらtwitterから「他のやり方の方がいいよ」ってメールが来て。

考えてみたらiOS5以降ならframework使ったら良いじゃんってことで。この辺りを参考にさせていただきました。

Cocoaの日々: TWTweetComposeViewController でツィート
Beginning Twitter in iOS 5 Tutorial

で、写真付きでつぶやくのは余裕だったのですが、さて、そのつぶやきをsearch APIで取得して一覧表示使用としたらちょっとハマったのでメモ。

これまではtwitpicに出力していたから短縮URLから画像自体のURLを取り出すことができていたのですが、frameworkだとtwitterのURL変換ルールに則るので、t.coからどうやって画像のURLを取り出したらいいのだ?!と小一時間悩みました。

で、Twitter Developersサイトに以下のような記述が。

GET search | Twitter Developers

include_entities(optional)

When set to either true, t or 1, each tweet will include a node called "entities,". This node offers a variety of metadata about the tweet in a discrete structure, including: urls, media and hashtags. Note that user mentions are currently not supported for search and there will be no "user_mentions" key in the entities map. See Tweet Entities for more detail on entities. Please note that entities are only available for JSON responses in the Search API.

ハマったのが太字のところ。これまでxmlで取得していたのでそりゃいくらinclude_entitiesを指定してもentity情報返ってこないわけで。JSONで戻すようにしたら取れました。その分パースの部分もJSONフレームワーク使ったりして作り直しが発生しましたが。

JSON Frameworkを使ってjsonをiPhone(iOS)でパースする。 - ひろぽんのプログラミングメモ

でも、これでTwitter周りの実装がスッキリしたなーと。


実験@2012/12/02 23:03   | 0 comments | 0 trackbacks |

TwitterのxAuth申請方法が変わってた

前はこちらの記事にあるようにメールでの申請だったのですが。

意外に簡単なTwitterのxAuth認証の申請方法 - 言葉の海のプログラマー

申請用のフォームができていました。

Twitterヘルプセンター

こちらにアプリの情報を入力してサブミットするだけということで。


実験@2012/11/27 10:55   | 0 comments | 0 trackbacks |

«  | HOME |  »

いろいろ作ったり

プロフィール

icot

Author:icot
総合電気メーカで働く会社員でしたがいい年にも関わらずコンサルに転職。お酒、ジョギング、音楽、本、料理をこよなく愛してます。ここでは、日々感じた事を書き連ねるとともに、いろいろ実験してみたりしてます。
icotfeels[at]gmail.com

これまでに感じたこと