2014年4月28日月曜日

ニュース記事を取得するのにGoogle Custom Search Engine(CSE)を使う

google_custom-search-engineGoogle News Search APIが完全に廃止される2014/05/26が1ヶ月後に迫ってきたので、真剣にどの技術を使うか調べてみた。

代替手段として調べたサービス。

  • Bing Search API
  • Yahoo News API
  • GoogleニュースのURLに「output=rss」を付けて処理

サーバー側でキャッシュした情報を配信したいので、それぞれの利用規約を読んで断念。

数多あるニュースサイトを串刺しで検索する方法はお金がかかりそうなので、Google Custom Search Engine APIを使って、ニュースサイトを手動で追加して検索対象にすることにした。

登録方法は下記サイトが分かりやすい。

簡単な手順

  1. Google Developers Consoleに行く
  2. Custom Search APIをONにしてAPI Keyを取得
  3. Google カスタム検索の管理画面に行く
  4. 検索エンジンを追加
  5. 検索対象にするニュースサイトを追加
  6. 検索機能 → 詳細設定で検索結果の並び替えをオンにする
  7. API Keyと検索エンジンIDを使ってAPIにリクエストする

1日100リクエストに制限されているので、15分に1回リクエストして最新情報を取得する感じ。

詳細は公式リファレンスを参考に。

 

< Related Posts>

2014年4月25日金曜日

子育て支援アプリ「teniteo学園」をリリース

teniteo_academy去年、子育て情報サイト「teniteo」の今後の戦略についてプレゼンして作らしてもらったアプリの紹介。

まず、今までのウェブサイトとアプリの主な問題点

  • 登録会員数の伸び悩み
  • アクティブユーザー数が少ない
  • 書き込みまでしてくれるのは一部のユーザー
  • 愛知の地域情報が目立っていて他の地域の人が入りづらい

 

これを解決するために新しいアプリで実践したこと。

  • 「学園」のイメージで仮想空間を作る
  • アニメ調で可愛く
  • 会員登録しなくても閲覧とコメント可能
  • アイコンを多用して直感的に使いやすく
  • 掲示板機能に特化

 

出来たのがこれ。

 

学園のイメージを出しつつ使いやすいUIを考えるのに苦労した。

次はアプリのプロモーションを考えたい。

 

< Related Posts >

2014年4月18日金曜日

[Titanium] アプリ名に日本語を含んでいるとDistributeするときにError

tiapp.xmlのnameタグを日本語名にしただけでAndroidもiOSも開発は出来たけど、iOSをDistributeしようとしたときにエラーになった。

ちなみにAndroidはPlayストアへアップロードしても問題なかった。

環境: Titenium SDK 3.2.2.GA

エラーはこれ。

image

参考サイト

 

修正手順

1.各言語フォルダにapp.xmlを作る

$ vi /i18n/jp/app.xml
$ vi /i18n/en/app.xml

<?xml version="1.0" encoding="UTF-8"?>
<resources>
    <string name="appname">日本語名のアプリ</string>
</resources>

 

 

2.tiapp.xmlを編集

tiapp.xmlのnameタグはアルファベットで記述する。

アンダーバーを入れたらValidationのときに同じエラーになった。ハイフンとスペースは大丈夫だった。

さらにAndroidの場合は、「android:label」を指定しないと設定 → アプリケーション管理でのアプリ名がnameタグで指定した名前になる。

<android>
  <manifest>
    <application android:label="日本語名のアプリ">
    </application>
  </manifest>
</android>

ビルドすると/build/android/AndroidManifest.xmlが作成されるので確認できる。

参考サイトの記事ではAndroidManifest.xmlを設置する方法が書かれていたけど、tiapp.xmlを編集するだけで大丈夫だった。

 

< Related Posts >

2014年4月16日水曜日

子育て情報サイト「teniteo」アプリをアップデート

iOS, Android向けに配信中の「teniteo」アプリをリニューアル。

今回はサーバー側も設計し直した。。。というかNode.jsで書き直した。アプリのUIも大きく改善。タブ型からスライドメニュー型にした。

前回

Screenshot_2013-07-05-02-55-15-659Screenshot_2013-07-05-02-56-31-659

 

今回

device-2014-04-16-154426device-2014-04-16-154449

 

レスポンスもよくなってるし、ママたちが使ってくれるといいんだけど。

TitaniumとNode.jsにも慣れたし、Titanium + Node.js + WordPressの組み合わせで別のサービスも作っていきたい。後はアイデアしだい。

 

< Related Posts >

2014年4月11日金曜日

[Titanium] TextFieldにカーソル(キャレット)が表示されない

textfield_cursorTitaniumで作ったアプリを最近買ったNexus5で動作確認しているときの覚書。

入力時にカーソルの位置(キャレット)が表示されないので入力しづらい。Galaxy S2(Android 4.0.3)ではこの現象は起きなかった。

環境: Titanium SDK 3.2.2.GA, android:targetSdkVersion=19, Android 4.4.2

どうやらAndroidのテーマを理解する必要があるらしい。

 

修正手順

1.カスタムスタイルを定義するXMLファイルを用意。

プロジェクトフォルダに「platform/android/res/values/styles.xml」を作成。

次のように記述。nullに設定するとcolorと同じ色を使うようになるらしい。

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <style name="Theme.MyTheme" parent="@android:style/Theme.Holo.Light">
        <item name="android:textCursorDrawable">@null</item>
    </style>
</resources>

 

2.tiapp.xmlに作成したカスタムスタイル名を指定。

<android>
    <manifest>
        <application android:theme="@style/Theme.MyTheme">
        </application>
        <uses-sdk android:minSdkVersion="10" android:targetSdkVersion="19"/>
    </manifest>
</android>

これでとりあえず表示されるようになった。…けど薄い。

 

次は、これを応用して青色にする場合の手順。

1.カーソルの形状を指定するXMLファイルを用意。

「platform/android/res/drawable/style_cursor.xml」を作成。

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
  <size android:width="2dp" />
  <solid android:color="#0000ff" />
</shape>

 

2.さっき作成したstyles.xmlを修正。

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <style name="Theme.MyTheme" parent="@android:style/Theme.Holo.Light">
        <item name="android:textCursorDrawable">@drawable/style_cursor</item>
    </style>
</resources>

 

ちなみにTextFieldの下に表示されるアンダーラインは背景色(backgroundColor)を設定すると表示されなくなる。

 

< Related Posts >

2014年4月10日木曜日

Nexus5(Android 4.4 KitKat)を買った

android_kitkatアプリ開発のためにxxhdpi, Android4.4の端末が欲しくなったので、Nexus5を買ってしまった。

Google Playで16GBが¥39,800なり。

2年間使い続けると月1,658円なので、キャリアと契約するより買ってしまった方が安い。これに月額490円のSIMを利用すればコストパフォーマンス抜群。

 

Android 4.4からはDalvik仮想マシンを置き換えるために開発されている新しいAndroid RunTime(ART)が実験的に導入されている。

アプリの実行をより高速かつバッテリー効率よく動作できるらしい。

試してみたところTitaniumで作ったアプリも問題なく動いたので一安心。

ARTに関する参考記事

 

最後に設定の切り替えを簡単にできるアプリを紹介

 

< Related Posts >

Related Posts Plugin for WordPress, Blogger...

Blog Archives