なんでも盛り込めばいいってわけじゃないんですけれども。 iOS 10以降、VoIPアプリにもCallKitやPushKitが解放されたので、本格的な電話機能を持つアプリを作成することが可能になりました。Facebook MessengerやSkypeなどにはもう実装されていますが、実はTwilioも手をこまねいてばかりいるわけではありません。9月にはiOS用SDKの公開ベータが出ています。 大きな特徴は、何はさておきVoIP用のPush Notificationsに対応したことです。これまで着信についてはアプリが起動してフォアグラウンドにいない限りはPush通知で最長30秒までの音を鳴らすくらいしかユーザに通知する方法がありませんでしたが、VoIP用のPush Notificationsを利用することにより、まるで普通に電話がかかってきたような画面と動作でユーザーに着信を通知することができ
初めてQiitaに投稿してみます。ドキドキ。。。 remark-lintをインストールするために初めてnpmを使ったのですが、環境構築時にすごくハマったのでメモ。 Mac内に/usr/local/bin/npmコマンドが見つかったので、なんかのタイミングでHomebrewで入れたんだったかなーと思い、とりあえずnpm installをしてみました。 するとこんなエラー。 ~ % npm install --save remark-cli remark-lint remark-preset-lint-recommended npm ERR! Error: EACCES, open '/Users/$USER/.npm/aeb23529-remark-cli.lock' npm ERR! { [Error: EACCES, open '/Users/$USER/.npm/aeb23529-re
ずっと探してました。ようやく自分の持っている[Android] Sony Tablet S をmacから開発可能にしました。同じ悩みを持った人のために方法を公開します。 前提: 1.Android SDK既にインストール済み (未インストールの場合http://dl.google.com/android/android-sdk_r16-macosx.zip からダウンロードして、インストールしてください。) 2.MacBook Air 3.開発ツールはTitanium 4.Android実機(私の場合は Sony Tablet Sであるが、他のメーカのAndroidも同じであるはず) 手順: (1)「USB Vendor ID」入れた「/Users/myacountname/.android/adb_usb.ini」ファイルの作成 (「USB Vendor ID」はメーカ別に振られています
忘れないようにメモ Titanium mobileでアプリを申請する時、アプリ名とかを別途変更したいときがあります。 その時のやり方が分からなくて1日ハマりましたが分かりました。 以下参照 http://keygx.blogspot.jp/2011/04/titanium-mobileiphone2.html Titanium mobileでビルドして出てきた、 Project root/build/iphone/Info.plistをProject rootにコピー 後はProject rootの方に移したInfo.plistを任意に書き換えるだけ。 どうやらここから情報をちゃんと読み取ってくれるらしい。 ちなみに、 Bundle display nameがiPad上で表示されるアプリ名 Localization native development regionが言語設定(これを変更す
Titanium Studioを起動するのが面倒だったので、 最近使ってるsublime text2で開発できるようにしたのでメモ。 【1】TitaniumのSDKをまず3.0以上に上げる ※現状beta版なので注意 下記DLサイトからインストールすると簡単。アップデートの内容は開発者ブログで確認。 DLページ 開発者ブログ 【2】Node.jsをインストール 色々インストールの方法はあれど、きっと一番迷わないので公式からインストール。 公式サイト バージョンが表示されればインストールOK。 一応最近の物を入れる。(11月15日現在 v0.8.14) 【3】npmからTitanium CLI をインストール node.jsがインストールできたらnpmからTitanium CLI をインストール ・インストール
前置き Titanium Mobile + Alloy では、ModelをBackbone.jsを使って書きます。 などと言われているようだが、実際にはBackbone.jsそのままというわけではないようだ。 そんなわけで、ちょっと調べてみた。 ちなみにここでは、Todoリストアプリっぽいものを書いていると思ってください。 モデルの書き方 Titanium Mobile + Alloy の新しいプロジェクトを作成すると、appフォルダ以下に、controllers, models, views など、いかにもMVCなんです的なフォルダ構成になっている。 この中の、modelsフォルダに「なんちゃら.js」というファイル名でモデルを書いてやると、 Titanium Mobileが自動的にBackbone.jsを使ってくれる。 強制である。 使わないという選択肢は(おそらく)存在しない。 ため
概要 2014年02月25日に TypeScript1.0RC(compilerVersion 0.9.7) が公開されました。 Announcing TypeScript 1.0RC Titanium + Alloy + TypeScript1.0RC のコンパイル方法を調べても情報を見つけられなかったので、自分でなんとかコンパイルできるようにしました。 環境 MacOS X 10.9.2 Titanium SDK 3.3.0 Alloy 1.3.1 TypeScript1.0RC 参考 以下の記事を参考にさせていただきました。 Titanium + Alloy + TypeScript で、iOS & Android アプリを作る 詳細 ファイルのコピー Typescript インストールフォルダの tsc.js と lib.d.ts を Alloy インストールフォルダ内の bin
Titanium Alloy の measurement.js がイケてない実装だったので、作りました。 [Titanium] Alloyのmeasurementの実装がイケてなかったので再実装した - それはBooks var currentUnit = Ti.App.Properties.getString('ti.ui.defaultunit', 'system'); currentUnit = (currentUnit === 'system') ? (OS_IOS) ? Ti.UI.UNIT_DIP : Ti.UI.UNIT_PX : currentUnit; function convert(val, fromUnit, toUnit) { return Ti.UI.convertUnits('' + parseInt(val) + fromUnit, toUnit); } m
2014/4/23にmixiからリリースされたdeploygate ios sdkをtitanium mobileから使えるようにするモジュールを作ってみました git repos 主な機能 リモートログ出力 deploygateユーザー認証 アップデート通知 deploygate ios sdkが提供する機能のほぼ全てを使うことができます! 使い方 deploygate ios sdkを手に入れる https://deploygate.com/docs/ios_sdk TiDeploygateをチェックアウトし、ルートディレクトリにある ti.deploygate-iphone-0.1.zip の中にある module.xcconfig のframework参照先を書き換える OTHER_LDFLAGS=$(inherited) -framework DeployGateSDK -F"[
Mavericksをクリーンインストールして、Java SDK1.8とTitaniumStudioをインストールした。 いざTitaniumを起動してみるとこんなエラーが。 Appceleratorのフォーラムでは解決済みの問題になってました。 Cannot load Titanium Studio これに従って、 Java for OS X 2013-005 これをインストールして無事解決。 Register as a new user and use Qiita more conveniently You get articles that match your needsYou can efficiently read back useful informationYou can use dark themeWhat you can do with signing up
一ヶ月でやったこと。 とあるサーバーにアクセスして、日付を記録するアプリの制作。 普通のタイムカードアプリですね。 ただ、集団で管理できるように記録をアプリの中だけではなく、外部サーバーでも保存出来るようにしようと言うことで制作を行いました。 Alloyを用いたプロジェクトで、 Android,iPhone 等で使用できるアプリを作りました。 制作の際に用いたノウハウや、躓いたり、今でもよくわかんねぇって点をつらつらと週順で書き記していきます。多分やばい記述とか普通にしているんで、誰かご教授して頂けると幸いです。(Titaniumって結構情報がWebに落ちてなくて辛いんだよなぁ(´・ω・`) 1週間目 サーバーにアクセスしよう。 とにかくサーバーにアクセスせねば。ということで用いたソースがこれ。 送り先はPHPです。 exports.timecard = function(data1,da
カメラを起動してバーコードを撮影し、そこから読み取ったISBNコードを使ってAmazonAPIを叩いたり何だりするアプリを作ったものの、やたらと落ちる。 そんなときに行った対処法です。 HTTP通信 APIを叩くときなど使用頻度の高いHTTP通信ですが、Titanium.Network.HTTPClientを使ったときにメモリリークが多発。 原因:単純に通信後メモリ解放が出来ていない 解決:通信終了後にonloadなどのコールバックメソッドにnullを渡してあげる ということで、以下のように実装しました。 var client = Ti.Network.createHTTPClient({ onload : function(e) { /* * 無事レスポンスが返ってきたときの処理 * ex) nextScreen関数に返ってきたテキストを渡す */ nextScreen(this.res
半年前に仕事でTitaniumMobileを使用したので、ハマった所やTipsを幾つか紹介。 多分にオレオレプラクティスになっているので、参考程度にお願いします。 Titanium mobileでNavigationWindowで数階層下にあるViewからRootWindowまで一気に戻る。 iOSのnavigationControllerでpopToRootViewControllerAnimatedみたいな操作が出来ないかなーと思って、色々調べたけど、標準ではAPIが用意されていないみたい。 したがって、遷移してきた画面をグローバル変数として配列で保持して、それをFor文で一気にクローズする方法を試してみました。 次の階層に遷移する際にグローバル変数の配列に画面を格納。 var nextView = Alloy.createController('nextController').ge
このドメインを購入する。 2019 Copyright. All Rights Reserved. The Sponsored Listings displayed above are served automatically by a third party. Neither the service provider nor the domain owner maintain any relationship with the advertisers. In case of trademark issues please contact the domain owner directly (contact information can be found in whois). Privacy Policy
このドメインを購入する。 2019 Copyright. All Rights Reserved. The Sponsored Listings displayed above are served automatically by a third party. Neither the service provider nor the domain owner maintain any relationship with the advertisers. In case of trademark issues please contact the domain owner directly (contact information can be found in whois). Privacy Policy
このドメインを購入する。 2019 Copyright. All Rights Reserved. The Sponsored Listings displayed above are served automatically by a third party. Neither the service provider nor the domain owner maintain any relationship with the advertisers. In case of trademark issues please contact the domain owner directly (contact information can be found in whois). Privacy Policy
このドメインを購入する。 2019 Copyright. All Rights Reserved. The Sponsored Listings displayed above are served automatically by a third party. Neither the service provider nor the domain owner maintain any relationship with the advertisers. In case of trademark issues please contact the domain owner directly (contact information can be found in whois). Privacy Policy
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く