アプリ開発部屋リリースしたアプリの告知とかサポートとか、技術的なお話とか、そんな感じでつぶやきます。この広告は、90日以上更新していないブログに表示しています。新作アプリを公開しましたみなさま、いつもご利用頂きありがとうございます。Hoshikawaでございます。ウェブなどで連載中の作品です。毎回、女性との「やれたかもしれない」(セックスできたかもしれない)思い出を持つ男性が、面接会場のような場所を訪れ、女性と甘酸っぱさやほろ苦さ残る思い出を独白形式で語る。聞き手である男性2名、女性1名で構成される「やれたかも委員会」メンバーが、最後に「やれた」か「やれたとは言えない」かを判定する。(wikipediaより抜粋)第1巻は完全に無料で!現在は2巻まで刊行中ですが、第1巻は完全無料となっております。第2巻の価格は¥240となっております。お知らせみなさま、いつも当アプリをご利用頂きまして、ありがとうございます。Hoshikawaでございます。今回は、拙作アプリ無料で1巻!特攻の島に関するご報告です。佐藤秀峰さんが手がける漫画特攻の島が、長年の連載を経て、ついに完結いたしました。搭乗員の姿を描いた物語で、当然舞台は太平洋戦争真っ只中。最後の作戦に挑む渡辺の運命は!?是非ともご覧下さい!最終巻の表紙はこんな感じ!最終巻の表紙はこのようになっています。第1巻では、表情に幼さも残していた渡邊でしたが、物語をしめくくるこの最終巻で、何かを悟るような表情を見せています。どのような形で物語が完結するのかは、ぜひ皆様自身の目でお確かめください。価格は¥240!第2〜8巻と同様、価格は¥240となっております。ブラックジャックによろしくこの度、2017年08月31日付で、電子書籍「ブラックジャックによろしく」の取り扱いを有料とさせていただきました事をご連絡いたします。ブラックジャックによろしく」は、2012年09月12日に二次利用のフリー化が行われ、誰でも規約に則り、自由に作品を利用することが可能となりました。当アプリでも、この規約に則り、無料で作品を配布させていただいておりました(新ブラックジャックによろしくは無料配布の対象外です)。有料化についてこの度、作者様の意向により、この二次利用規約に改定が行われました。改定された規約では、アプリでは無料での取り扱いができないものとなっております。以下、改定後の規約の抜粋です。1円以上の有償販売としてください。佐藤秀峰に分配する必要はありません。6.0.0)からは、ブラックジャックによろしくは有料とさせていただいております。旧バージョンのアプリについてこれまでのバージョンのアプリでは、ブラックジャックによろしくは閲覧できないようになっております。購読される場合は、新しいバージョンに更新していただいた上で、ご購入いただきますよう、よろしくお願いいたします。無料での配布についてなお、作者様が運営されているサイトでは、引き続き無料での配布が行われております。当アプリでは無料での配布はできなくなりましたが、こちらをご利用いただくことで、引き続き無料での閲覧が可能となっておりますので、合わせてご利用いただければと思います。マンガonウェブ以上です。申し訳ございませんが、ご理解いただけますよう、よろしくお願いいたします。新作アプリを公開しましたみなさま、いつも当アプリをご利用頂きまして、ありがとうございます。Hoshikawaでございます。続く塀内作品マンガアプリとなります。3作品とも、塀内さんの作品としては比較的近年の作品であり、記憶に新しい方も多いかもしれませんね。2004年に連載されていた作品です。さまざまな事情で少年院に入ることになった9人の少年たちが、少年院を出るためにボート競技「レガッタ」に取り組む、という一風変わったスポーツ青春マンガです。舞台が舞台なだけに、色んなものを抱えた少年たちが、どのようにして団結してレガッタに取り組んでいくのか?イカロスの山とはこの作品は、2005年から2007にかけて、講談社発行の週刊モーニングに連載された、本格登山漫画です。エベレストに人類が初めて登ってから半世紀、新たにヒマラヤの未踏峰が発見されたとのニュースが駆け巡る!この山への遠征隊には、かつて数々の山々を制覇した名コンビ「三上」と「平岡」が加わる!果たして、彼らはこの未踏の山を制覇することができるのだろうか!?コラソンとはこの作品は、2010年から2012年にかけて週刊ヤングマガジンに連載された作品です。日本代表にスポットを当てたサッカーマンガで、「オフサイド」「Jドリーム」とは一味違った切り口で展開されるサッカーマンガです!20XX年、日本代表はワールドカップ・アジア最終予選において、得点力不足から5試合を消化した時点で暫定4位に低迷した。日本サッカー連盟はスケジュールの空いていたヘルマン・ヴィースラーに監督就任を要請。ヘルマンは「全権委任」を条件に要請を受け、ブラジル2部リーグで得点王となっている戌井凌駕を招集するが、彼はかつて暴力事件を起こして日本サッカー界を追放されたいわくつきの男だった...(wikipediaより)第1巻は完全に無料で!どの作品も、第1巻は完全無料となっております。第2巻以降の価格は、それぞれ¥240となっております。塀内夏子さんの最新作は、マンガonウェブにて!現在刊行中のWeb雑誌マンガonウェブには、塀内夏子さんの連載も掲載されております。始まりました!アメリカのAppStoreを使っているユーザさんは、検索するたびに広告が表示されるようになったみたいです。「AppStoreで検索したら、その検索ワードに関連するアプリの広告が表示されるようになる」というものです。これはAppleが運営する広告サービスで、現在はアメリカのAppStoreのみで導入されています。広告を出稿したい開発者さんは、Appleにお金を支払って、広告掲載アプリの候補にストックしてもらうような感じです。ユーザにとっては厄介なサービスにも思えますが、一度の検索で表示される広告は1件のみ、広告であることが一目でわかるレイアウトであったりと、一定の配慮はされているようです。わかりづらさが正義!なネイティブアドとは違うんですよ、と言いたげ。相当のクーポン配るでー」という感じで、開発者にばら撒き政策を実施しました。開発者はみんな、お試しで約¥10,000分相当の広告が無料で打てますよーってことのようです。アメリカさんしか関係ないサービスなので、追いかけるつもりはなかったのですが...まぁそこまで言うなら使ってみましょうか!こんな感じのメールが、開発者に届きました。口座を登録している開発者、みたいな縛りがあるようです。アカウントを作ったらプロモーションコードあげるでー」って書いてあったので、とりあえずアカウントを作ってみることにしました。アカウント登録ができました。アカウントを作っていた時点では記事にするつもりはなかったため、スクショや細かい手順のメモなどはないのですが...気をつけるポイントとしては名前や住所は、全角じゃなくて英語で入力しろや!ってことです。お世話になっていました。いうバグに遭遇してしまい、訳のわからない状況に陥っていました。...皆さんはお気をつけください。発行されたプロモーションコードを有効化するアカウントを作ったら、無事にプロモーションコードを含んだメールが届きました。メールには「支払い用のクレジットカードを登録したらプロモーションコードを有効にしてやるでー」と書いてありますね...まぁそうですヨネ。おとなしく、クレジットカード情報をAppleに捧げましょう。クレジットカードと個人情報を入力し、プロモーションコードを入力すると、こんな感じで有効化されるみたいです。キャンペーンを作る広告を掲載するために、キャンペーンを作成します。掲載するアプリを選択します。唯一、海外版のコンテンツが存在する「ブラックジャックによろしく」のアプリを選択しておきました(他に選択肢ないですし...)。アプリを選択すると、いろいろと細かい入力欄が表示されるみたいですね。キャンペーン広告出稿の大枠で、対象になるアプリとキャンペーンの名前、全体の予算を設定する。オプションで、1日ごとの予算も設定できるみたいでした。Keywordsキャンペーンの対象から外すキーワードを設定このキーワードには反応させない、という設定ができるグループキャンペーンには、複数のグループを紐づけられます。クリック単価や掲載スケジュールは、グループの単位で設定します。Matchキャンペーンごとに設定する情報。登録しているアプリのメタデータをもとに、いい感じで広告を掲載するスイッチ?そんなこと言われたら、ONにするしかないじゃない。Match検索マッチ機能をON/OFFできるアプリのメタデータをもとに、最適化して掲載してくれるらしい?とりあえずONにしておけば良さそうな雰囲気キーワードの設定グループには、複数のキーワードが設定可能です。クリック単価は、紐付いているグループに依存します。Keywords逆に、反応させないキーワードをここで設定するユーザの細かいターゲッティングキャンペーンごとに設定する詳細設定です。広告を表示するユーザを、細かくターゲッティングできます。年齢Locations位置情報で絞る特定の地域で利用可能なサービスアプリなどであれば、これで絞るといいまぁアメリカ内ということには変わりないんですけどねキャンペーンのイメージ図アプリ、キャンペーン、グループなど、登場人物が多いが、全体をまとめるとこんなイメージ。表示されるのかな管理画面では、作成したキャンペーンやグループが確認できるようになりました。(汗)データを見ながらキーワードや単価を調整する自分としては実験の域は出ませんが、もう少し様子を見ながら、掲載される瞬間を楽しみにしたいですね。予算を組んで広告の掲載を行う場合は、管理画面に表示されるデータを見ながら、キーワードや単価を調整して、効果の高いやり方を探っていくことになりそうですね。レポートもかなり細かく確認できるようですので、世の中的に情報が出回ってきたら、もう少し突っ込んで調査してみようと思います。塀内夏子みなさま、いつも当アプリをご利用頂きまして、ありがとうございます。Hoshikawaでございます。塀内夏子さんのサッカーマンガ!この2つの作品は、マンガ家塀内夏子さんが手がけたサッカーマンガです。ともに少年マガジンを支え続けた作品で、オフサイドは1987年から1992年にかけて、Jドリームは1993年から1999年にかけて連載されていました。30〜40代くらいの男性にとっては、懐かしい作品なのかもしれません。オフサイドとはオフサイドは、高校サッカーを舞台にしたサッカーマンガで、2001年にはアニメ化もされた作品です。イラストからも分かる通り、主人公の熊谷五郎の連載開始時点でのポジションはキーパーであり、サッカーマンガの主人公としては珍しいイメージですね。JドリームとはJドリームは、オフサイドの連載が終了した翌年から連載が開始された、同じくサッカーマンガです。高校サッカーではなく、プロサッカーリーグJリーグを舞台としています。連載が開始された1993年とは、Jリーグが発足した年であり、日本中がサッカーで熱狂していた年です!このJドリームも、Jリーグの開幕前後が舞台となっており、当時の日本のサッカー熱が見事に描かれております。アメリカワールドカップやフランスワールドカップへと舞台が移っていき...是非とも続きはアプリでご賞味ください!第1巻は完全に無料で!どちらも10巻を超える作品ですが、第1巻は完全無料となっております。第2巻以降の価格は、それぞれ¥360となっております。塀内夏子さんの最新作は、マンガonウェブにて!現在刊行中のWeb雑誌マンガonウェブには、塀内夏子さんの連載も掲載されております。フレンチトーストAppleTVのアプリ開発していたらお腹が空いた自宅でtvOS向けアプリの開発していたら、無性にフレンチトーストが食べたくなったので、ノリで作ってみました。これがまずまずの美味しさだったので、アプリ作りとフレンチトースト作りについて、備忘録を兼ねて解説していきたいと思います。Wikipediaちなみにアプリは、テレビ向けっぽく動画のアプリがよかったので、Youtube動画を再生できるアプリを作ってみます。用意したものはこちら今回用意したのはこちらです(※1人分)。Type-Cバニラエッセンスがあると尚良いらしいですが、最寄りのスーパーに売ってなかったので今回は見送りました。今回作成したアプリはこちらに置いてあります。github.com作ろうとしているアプリの概要は、こんな感じです。Applicationを選択し、アプリ名をYoutubeViewerとしておきます。cocoapodsでライブラリを入れようcocoapodsを使って、必要なライブラリを入れておきます。Podfileはこんな感じで設定してみました。'AlamofireImage'endHCYoutubeParserYoutubeのコンテンツに対して、AppleTVでも再生可能な形式のURLを生成してくれるライブラリ。UnboxJSONパーサ。ギャップロさんの記事を参考にしました。AlamofireImage画像の非同期取得ライブラリAlamofireを使うので、せっかくなのでこれも使おうUnboxの使い方については、ギャップロさんを参考にさせてもらっていますよ。www.gaprot.jpまた、フレンチトーストについては、こちらのサイトさんを参考にさせてもらっていますよ。food.kihon.jp卵液を作ろうパンに染み込ませるための卵液の作り方です。言っても、卵をよく溶いて、牛乳・砂糖(とバニラエッセンス)を加えて、しっかりと混ぜるだけです。パンを浸そう出来上がった卵液に、パンを浸します。箸でつまむと、卵液をよく吸います。卵液が全て吸われてなくなるまで、両面をしっかりと浸しましょう。このまま放置するのも良いと思います。それでも卵液が余るようなら、第2・第3のパンを投入しましょう。YouTube今回のアプリ内に並べるYoutubeのコンテンツは、プレイリストを作って用意することにします。適当なプレイリストを作成して、そのプレイリストのIDを控えておきましょう。ちなみに自分は、今回のアプリ用にこんな感じのプレイリストを作ってみました。昔よく聞いていたバンドや照井春佳さん出演コンテンツ、なにかと所縁のあるコンテンツなどを並べてみました。先頭の動画はとてもカッコよろしいです。こちらはURLを見るとわかります。YoutubeAPIを利用してプレイリストを取得するまずはアプリからYoutubeAPIを実行して、プレイリストのデータを取得してみましょう。YoutubeAPIの仕様については、この辺りの公式ドキュメントを参考にするとよさそうです。Keyは、各々で取得してください。あたりを参考に取得すれば、とりあえず動作可能です。DevelopersAPIの実行とJSONのパース(ViewController.swift)API通信部分は、Alamofireを使って、こんな感じでメソッドとして定義しています。completeHander)}viewDidLoad()あたりで、上記のメソッドを呼び出しています。}}JSONデータのパースのためのDTO(YoutubePlaylistModel.swift)受け取ったJSONデータの構造に対応するDTOを、ひたすら定義していきます。今回は、利用する項目が限られているので、不要な項目に対応する構造体やプロパティは、省略しております。NSURL}各DTOを、Unboxableプロトコルに準拠させます。}}CollectionViewで、画面上にサムネイルを表示するデータの取得が成功したら、CollectionViewを使って画面にサムネイルを並べていきます。Storyboardでは、UICollectionViewを画面いっぱいに広げて配置しています。CellのクラスはYoutubeCellに変更し、サイズいっぱいにUIImageViewを配置しています。接続なども忘れずに行いましょう。collectionViewの準備と表示処理(ViewController.swift)通信の取得後に、collectionViewを更新する処理を追加します。self?.collectionView.reloadData()}UICollectionView関連のプロトコルを、いい感じで実装しましょう。}}サムネイルの表示処理など(YoutubeCell.swift)セルのクラスでは、画像の非同期取得処理と、フォーカス時の拡大処理などを実装しておきました。}}アプリを起動してみようここまでくれば、画面上にプレイリストのサムネイルが表示されます。「お?このPV知ってっぞ」と思った方は、なかなかのおっさんです。パンを焼こうここまでくると、パンが卵液をしっかり吸い込んでいると思いますので、さっそくパンを焼いていきましょう。フライパンにバターを入れ、中火で溶かしていきます。溶けたら弱火にしましょう。弱火のまま、じっくりと焼いていきましょう。両面とも焼いていきます。きつね色の焦げ目がついたら、フレンチトーストは完成です!腹減ったね!画面遷移を実装してみようプレイリストが取得できて、コンテンツが表示されるようになりました。あとは動画が再生できれば目標達成です。「任意のコンテンツを選択したらその動画の情報を次の画面に渡す」という処理を実装してみます。遷移先の画面を作成(PlayerViewController.swift)プレイヤー用のViewControllerとしてPlayerViewControllerクラスを作成しておきます。AVKitをimportし、AVPlayerViewControllerを継承します。前の画面からコンテンツ情報を受け取る必要があるので、インスタンス変数としてVideoItemを定義しておきましょう。VideoItem?}storyboardで画面とsegueを追加storyboard上では、AVPlayerViewControllerを配置して、トップ画面からsegueをつないでおきます。segueのidentifierは、適当に設定しておきましょう。配置したAVPlayerViewControllerのクラスは、先ほど作成したPlayerViewControllerに変更しておきましょう。コンテンツが選択された際の挙動(ViewController.swift)トップ画面で任意のコンテンツを選択された際は、選択されたindexPathをもとにVideoItemを取得し、インスタンス変数として保持します。あとは、先ほど設定したsegueを呼び出して画面遷移を行います。}}遷移のタイミングで呼ばれるメソッドで、PlayerViewControllerに対してVideoItemを渡します。}}この辺りのロジックはいくらでもやりようがあるので、お好みで実装してくださいな。動画の再生を行うVideoItemを渡して再生画面まできたら、あとはURLをAVPlayerに渡せば再生開始となります。プレイリストに含まれるvideoIdから、AppleTVで再生可能なURLを生成するために、HCYoutubeParserというライブラリを利用します。iPhoneであれば、他にもWebViewを利用した再生も可能のなのですが、tvOSの場合はAVKitを使う必要があるため、この方法をで再生します。}}HCYoutubeParserのメソッドで、videoIdからコンテンツURLを取得しています。取得したURLをAVPlayerに渡して再生を開始します。再生できました!ちょっとわかりづらいですが、シークなども何もせずに利用可能になります。tvOS向けアプリに関しては、動画アプリとはとても相性がいいと思うので、こんな感じで動画ビューワアプリを作ってみるのもいいかもしれないですね。再生できない動画もあるみたい...?作成したプレイリストのうち、再生できない動画が一定数ありました。試行回数もそれほどではないので定かではありませんが、どうやら古めのコンテンツについては再生ができないみたいでした。アプリもフレンチトーストも完成した!というわけで、無事にアプリもフレンチトーストも完成しました。16:16tvOS向けアプリとフレンチトーストの作り方を解説してみるTweet広告を非表示にするもっと読むコメントを書く次のページProfileid:hoshi0523日中は勤め先で、帰宅後は自宅で、iOSアプリ作ったりしています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。