2016年1月14日木曜日

iTunesでiosアプリのファイルを共有

Cordovaに限った話ではありません。
アプリで作成したファイルをiTunesを使ってやりとりをする場合はplistファイルへ設定を行います。

platforms/ios/{アプリ名}/{アプリ名}-info.plistをエディタで開いて以下のキーを追加

<key>UIFileSharingEnabled</key>
<true/>

もしくは

 xcodeでプロジェクトファイルを開いて Resources/{アプリ名}-info.plistを開いて「Application supports iTunes file sharing」を追加してvalueをYESに設定

2016年1月4日月曜日

CordovaでMac OSXのアプリを作成する

platform listで以前からosxの文字があり気になっていましたので、画面を表示するところまで行ってみました。
CordovaのWebサイトにもOSXの記述はないためサポート対象ではないようです。また、ほとんどのプラグインが使えないので実質オフラインでブラウザを表示しているだけの状態です。

1. 画面を表示するまでの手順

参考 Github cordova-osx

cordova create hello-osx org.eniblo.cordova.osx HelloOSX
cd hello-osx
cordova platform add osx@3.4.1 --save
cordova run osx

アプリ画面

右クリックで再読み込みボタンが表示されました。
(この時点でストアの審査は難しそうです)

dockにはアイコンが表示されています

iphoneのcordovaアプリはPCのsafariで認識して開発コンソールを表示できますが、このosxのアプリはリストに表示されませんでした。

2. リリースファイルの作成

ドキュメントには書いてありませんでしたが推測で行いました。

cordova build osx --release



3. サポートされている?プラグイン

  • Fileプラグイン

4. 感想

以下ができるとUIを簡単に作れるという点からもいろいろと使えそうです。
  • メニューを操作するプラグイン
  • コマンドを実行するプラグイン

Onsenui 日付ピッカー

Framework7のようにスライドするものは作れませんでしたがツールバーで前後に移動するものは作ることができました。Githubに置いておきます。

タブレット

スマホ

2015年12月17日木曜日

プラグイン作成


呼び出し方

plugin.xml
<js-module src="www/google_sign_in.js" name="GoogleSignIn">
        <clobbers target="window.googleSignIn"/>
</js-module>

呼び出し方1. プラグイン名+js-moduleのname
var plugin = cordova.require('google-sign-in.GoogleSignIn');
plugin.signin();

呼び出し方2. clobbersのtargetで指定した
window.googleSignIn.signIn

参考サイト


2015年12月11日金曜日

ブラウザ向けにビルドする

あまり知られていませんがcordovaには出力対象のプラットフォームにbrowserというものがあります。用途は開発用ということですが、buildコマンドでパッケージ(zipにしただけですが)にすることもできます。
プラグインについてもFileプラグインなど一部はbrowserに対応しています。

セットアップ

cordova platform add browser --save

動作確認

cordova run browser

8000ポートでWebサーバーが起動します

ビルド

cordova build browser --release

platform/browser/build/package.zip が作成されます
(なぜか現在package.zipが壊れて作成されて開くことができません。ただwwwフォルダをzipしているだけ?のようなので自分でzipにすれば良いのかもしれません。)


2015年12月3日木曜日

Cordova Android5でSqliteプラグインを使うとデータが消失

アプリをアップデート時(apkを切り替え)にsqliteデータファイルが上書きされてしまいました。

Cordova CLI 5.3
Cordova Android 5.0.0
SQLite plugin 0.7.4

必ずテストしてからあげないと大変なことになります。
Cordova Android 4.1.1では問題なしです。

2015年12月1日火曜日

Failed to load resource: A .. server with the specified hostname could not be found. 

iOSエミュレータで以下のエラーが出て開発中のアプリからアクセスできませんでした。

Failed to load resource: A .. server with the specified hostname could not be found.