AI Engineering Service

AI Engineering Serviceの公式ブログです。開発者のプライベートな内容を含みます。

2020年の収支(給料+株+アプリー税金他ー即時出費ー生活費)

今年の全収支を総括してみます。 まず収入について。 給料が月50万×12か月+ボーナス220万=820万 株の収益がざっくり50万 アプリの広告収入が月2万×12か月=24万 合計でだいたい900万ぐらいでした。去年が800万弱だったのでそこそこ上がりましたね。株が底…

もうすぐ親になるらしい

もうすぐ1人目の子供が生まれる。 予定日まであと10日ほど。女の子で、名前は2択ぐらいで保留している。 妻は里帰りしているが、妻の実家まで車で片道2時間程度なので週末は会いに行っている。 本当にもうすぐなのであるが、なんとまだ親になる実感がわかな…

株はじめました。アフターコロナの上昇相場に乗る

以前FXをやっていたのですが足を洗って5年近く、株に手を出し始めました。 新型コロナで株価が下落し、優待株などが割安で買えると思ったからです。 目論見は2020年6月頭現在うまくいっており、50万円程度のプラスとなっています。 ここでは現在のポジション…

今後の開発の展望と目標。android版開発と海外展開を視野に

現在と未来 最近のダウンロード数は1日200ダウンロード、収入で言えば300円強ほどの広告収入となっています。月に直すと10000円前後です。まだまだ雀の涙ではあるのですが、アプリ開発がサービスとして成立し、これからスケールしていこうという段階に入った…

2019年のダウンロード数と収益の結果まとめ

昨年の収益をまとめてみました。 2019年、アプリの開発を始めてから約1年となります。一年をかけて少しずつアプリをリリースし、現在iOSで11個、androidで1個のアプリを公開しています。 androidのダウンロード数、収益はまだ微々たるものですので、今回はi…

アプリ開発の収益公開、【2019年11月】

■ダウンロード数 11月は派手な動きはなかったものの、先月から徐々にダウンロード数が伸びて先月の3030から3310へと1割ほど増加しました。これに伴い毎日の広告プレビュー数も増加し、12月頭の時点で一日3000〜3500プレビューとなっています。 アプリ 説明 …

アプリ開発の収益公開、学習記録帳が堅調【2019年10月】

■ダウンロード数 10月は先月堅調だった時間割のダウンロード数は落ち着き、一方で学習記録帳のダウンロード数がかなり伸びました。インプレッション数が伸びているのでAppStoreの検索アルゴリズムが変わった影響が出ているのでしょうか。また、いくつかの好…

アプリ開発の収益公開、新学期シーズン到来【2019年9月】

■ダウンロード数 9月は新学期シーズンであり、時間割の月初のダウンロード数がかなり伸びました。特に多かったのはサウジアラビアなどの非英語圏で、競合アプリが少ない影響が出ているのではと感じました。その後ダウンロード数は落ち着きましたが月末にか…

【kotlin】画面遷移をして戻ってくる。コードでデータのやり取り実装

メモ: ・画面遷移だけであればstartActivity()でOK ・データのやり取りは共通のIDを使って行う ・遷移先の要素のIDを探して直接書き込む手法などもある。xmlでレイアウトしている場合など?データをやりとりするための共通のIDなどを定義 //メッセージに割…

【kotlin】空の配列を宣言したり、0で初期化したりする

メモ: ・空の配列はArray = arrayOf() ・配列の初期化はArray(size){i -> f(i)} //空の配列を宣言 var arr : Array<String> = arrayOf() //空のMapを宣言 var map : MutableMap<String,Array<Int>?> = mutableMapOf() //配列に要素を追加 arr += "Data" //Mapに0が24個入った配列を挿</string,array<int></string>…

【kotlin】日付を任意のフォーマットで書き出す、日付の加減算

メモ: ・SimpleDateFormatで指定書式の日付文字列を得られる ・日付の加減算にはCalendarクラスを用いるSimpleDateFormatのインポート import java.text.SimpleDateFormat 日付を指定のフォーマットにする val format = SimpleDateFormat("yyyy/MM/dd") val…

【kotlin】gsonを用いて任意のクラスの内容をSharedPreferenceに保存する

メモ: ・swiftでいうUserDefaultsにあたるのがSharedPreference ・そのままでは基本的な型しか保存できない ・gsonを使うと任意のクラスの内容を保存できるGsonのインポート import android.content.SharedPreferences import android.content.Context impo…

アプリ開発の収益公開、今月も順調に上昇【2019年8月】

■ダウンロード数 8月は夏休みとあって学習記録帳は好調。後半ではサウジアラビアやタイなどの非英語圏からの時間割のダウンロードが飛躍的に伸び、全体を通してダウンロード数が上昇しました。日次ダウンロード数は月初めの60程度から月末の120超まで倍以上…

【kotlin】Buttonを角丸にする

メモ: ・Button(あるいは一般にView)を角丸にするには一工夫必要 ・Shapeを別途定義し、Backgroundに設定することで角丸にできる //Buttonの宣言 val button = Button(this) //Shapeの定義 val shape = GradientDrawable() shape.shape = GradientDrawabl…

【kotlin】when(switch)文を使った色取得関数

メモ: ・kotlinの関数の記述は下記のような形 ・kotlinのswitch文はwhenを使う。stringでスイッチさせたり、in 0..2のような範囲指定も可能 fun getColorString(colornum: Int) : String{ var color : String when (colornum){ 0 -> color = "#FFFFFF" 1 ->…

【kotlin】アクションバーを消す(全画面表示)

app > res > values > styles.xml のstyleの値を書き換えます。 name = "AppTheme" parent = "テーマ名"となっているので、テーマ名を〜〜NoActionBarという名前のものに変更します。(Theme.AppCompat.Light.NoActionBarなど)

【kotlin】画面サイズを取得する

絶対座標で画面を構成する際、画面サイズ取得が必須になってくるのでメモ。 val dm = DisplayMetrics() windowManager.defaultDisplay.getMetrics(dm) val width = dm.widthPixels val height = dm.heightPixels

【kotlin】コードで絶対座標指定のビュー配置をする

Anko DSL Previewは最新のAndroidStudioに対応していないので、ネイティブのkotlinで書きます。 override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) //画面いっぱいの相対レイアウトを指定 val layout = RelativeLay…

【kotlin】Ankoプラグインの導入からHello Worldまで

Ankoとは Androidの画面がxmlではなくコードで書けるようになるプラグインです。また、kotlin単体で使うよりもコードが簡潔になるメリットがあります。 Ankoの導入からHello World 1. AndroidStudio > Preference > Pluginよりプラグインを探します。 Anko S…

【kotlin】MacでのAndroid Studio導入から実機接続まで

この度Android開発を始めることにしました。 言語はJava互換の言語の中でも流行りのkotlinを選択。 開発環境はkotlin開発元のJetBrainsが提供しているIDEが良さそう、ついでに参考文献が多そうという理由でAndroid Studioを選択。これはInteliJというIDEにAn…

ワンポイントカラー画像を作る、VividMono

VividMonoは指定の箇所の色をそのままに、他の場所をモノクロに変えるワンポイントカラーフィルタ処理を行うことができます。必要な手順はわずか2ステップです。難しい操作は必要ありません。簡単に印象的な写真が得られます。 ステップ1. 鮮やかに見せたい…

アプリ個人開発者の広告収益公開【2019年7月】

7月は広告を試しに出してみたり、他サイト様に紹介いただいたりした結果、ダウンロード数が上昇しました。 ■ダウンロード数 2月に開発を始め、今月でおおよそ半年になります。学習記録帳はリリース三ヶ月となり、ダウンロード数は一日30強まで増えました。全…

【東大式勉強法】勉強時間を記録する

勉強の基本にして究極の奥義は勉強時間を意識することです。長時間勉強するのはもちろん立派で良いことなのですが、「今勉強している」「今日勉強した」という事実を意識することで質を伴ってきます。隙間時間のちょっとした勉強でも、質を伴えば積み重ねで…

【東大式勉強法】暗記は全体の流れから攻める

今回は暗記科目についてです。 結論から言うと、暗記は段階を踏んで、大きな枠、大きな流れを覚えてから細かい知識を埋めることが重要です。また、一つのものを覚えるときはなるべく多くの関連知識、他の知識との繋がりを意識する必要があります。 大きな流…

【東大式勉強法】数学の心構え完全マニュアル

数学の勉強は国語の勉強 数学は(文系ではなく)理系の代表的な学問ということで勘違いされがちなのですが、数学を解く上で一番重要なのは国語力です。 数学の答案を書いて、「説明不足」「意味不明」「題意を満たしていない」などとバツを入れられたことは…

【Swift5】UILabelのタッチイベントを拾って処理をする

UIButton以外のオブジェクトに対してタッチイベントを拾いたい場合があると思います。 その場合、以下のように処理します。 override func touchesBegan(_ touches: Set<UITouch>,with event: UIEvent?){ print("touched") //myLabelはタッチ判定をしたいUILabel if t</uitouch>…

【Swift5】ScrollView内のタッチイベントを検知してキーボードをしまう

ScrollViewのタッチイベントを検知するのは結構よくある需要だと思うのでメモしておきます。ScrollViewのタッチイベントを拾ったらsuperviewのタッチイベントを呼び出す、といった形にtouchesBeganをオーバーライドしたMyScrollViewを作ります。 class MyScr…

【swift5】横にスライドする画面のサンプル

横にスライドして次の画面を表示するサンプルを作りました。 画面遷移ではなく、次のデータが入ったビューを横から引っ張り出してくるイメージです。ビューの宣言と初期化 //2枚のビューを使ってスライドを表現する。スライド回数の奇数偶数で状態が2種類…

【swift5】ある月の日数を数える

ある月の日数をゲットしたいと思ったとします。 1,3,5,7,8,10,12月は31日、それ以外は30日で2月だけ28日か29日です。 switch文での定義ではある年では良いのですが閏年には対応できません。 コードでうまく表現する方法を模索した結果、以下のようなものに落…

【swift5】時間の値を成分別に取り出す、日付の加算を行う

日付や時間の値をintとして取り出したいことってあると思うんですよ。 この辺りの実装について、以前フォーマットなどで無理やり書いていたのですが、 どうやら以下のようにカレンダーを使うとスッキリと書けるようです。 let day : Int = Calendar.current.…

プライバシーポリシー / お問い合わせ