rabbit-dev

現役スマフォプログラマーが適当にプログラム関係の記事を放り込むブログ

さくらVPS Ubuntu14.04をVNCで制御する

なかなか構築できなかったのでメモしておく 準備 カスタムOSでUbuntu14.04をインストール。標準OSだとうまく動かなかった。 ここがかなりハマった。標準OSで何度もトライするがうまく行かず、、、 インストール # パッケージ更新 sudo apt-get update # apt-…

Xamarin Formsでアプリリリースして思ったこと。

本記事は更新していきます。 XamarinFormsを使ってアプリを出してみたのでリリースまでしてみて実際どうだったの?という感想を書いてみようと思う。検討されている方の参考に、、、 過去に出したアプリ Voiceカメラ http://itunes.apple.com/jp/app/voice%E…

VoiceカメラがApplivで紹介されました!

ApplivさんでVoiceカメラが紹介されました!!うれしい! http://app-liv.jp/1230541554/ Voiceカメラ http://itunes.apple.com/jp/app/voice%E3%82%AB%E3%83%A1%E3%83%A9-%E5%A3%B0%E3%81%A7%E6%93%8D%E4%BD%9C%E3%81%99%E3%82%8B%E3%82%AB%E3%83%A1%E3%83%…

機械学習を使って株価予測をしてみた

tensorflowやchainerなど最近何かと話題の人工知能や機械学習。 今回はscikit-learnを使って株価予測をしてみた。以下の条件で予測してみると53%の確率になった。これは微妙。。。 条件 学習期間は2016年の1年間 予測期間は2017年の一部 上がる下がるのみ判…

排他制御を行う方法

Xamarin.iOS等で排他制御したい場合はMutexを使えばいい。WaitOneでロックしてReleaseMutexで開放。かんたんなコードだが添付しておく。 コード https://gist.github.com/4d075d411183bacabcb46fab670591e7 using System; using System.Threading; namespace…

Xamlで縦のSliderを置く方法

ググっても出てこなかったのでメモ残しておきます。参考までに、、 コード <ContentPage xmlns="http://xamarin.com/schemas/2014/forms" xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" xmlns:local="clr-namespace:sample” x:Class=“sample.samplePage"> <ContentPage.Content> </contentpage.content></contentpage>

UIImageをXamarin.Forms.ImageSourceに変換する方法

カメラで取った写真をXamarinFormsのUIに表示するためにはUIImageをXamarin.Forms.ImageSourceに変換する必要がある。そのためのコード コード var source = ImageSource.FromStream(() => img.AsPNG().AsStream());

XamarinFormsとiOSのログだしサンプル

System.Diagnosticsに揃ってます。 iOSはSystemにあります。FormsもSystemにあると思っていたので、、、少し手間取りました。 コード Formsでのログだし方法 https://gist.github.com/yuzoh/ffc51f4106eda3ea8cd879647279be79 using System; using Xamarin.F…

マイクの音量を検出する方法

http://blog.koogawa.com/entry/2013/11/24/121807 このサイトのXamarin版です。 コード https://gist.github.com/c2084778f54ebd07864180aea7f78040 private InputAudioQueue mAudioQueue; private NSTimer mAudioTimer; public void autoStart(){ AudioStr…

error: Failed to load AOT module '(null)' while running in aot-only mode: doesn't match assembly.の回避方法

原因は何かよくわからないが、、、 error: Failed to load AOT module '(null)' while running in aot-only mode: doesn't match assembly. というエラー が出た。(いつもの環境とは別の環境で作業したのでその影響かもしれない) 回避策 ・アプリ削除 ・リ…

The "XamlCTask" task failed unexpectedlyの回避方法

macのVisualStudio更新してビルドしたらThe "XamlCTask" task failed unexpectedlyのエラーが発生した。 回避方法 Xamarin.Formsのパッケージを更新+古いパッケージを手動で削除で回避 パッケージの更新は、それぞれのパッケージを右クリックして「更新」を…

ErgoDoxEZのキーマップを変更してみた

Githubでベースとなるプロジェクトが公開されています。 https://github.com/jackhumbert/qmk_firmware このプロジェクトには複数のキーマップが存在しており、それをベースに改良していけばいいかと思います。 私はmacでEmacsを使っているので中にあるemacs…

NetBeansで戻るショートカットが聞かない場合

macでNetBeans使ったときに起きた現象。 原因はCtrl-Leftにショートカットキーを割り当ててたため これを外せば聞くようになった。

ErgoDox EZ買ってみた。(Vプリカで購入)

最近流行り(?)のPCキーボードErgoDox買ってみました。 ちなみにまだ手元に届いてないです。 ergodox-ez.com 購入方法をまとめておきます。 費用 Subtotal : $295.00 USDShipping : $30.00 USDTotal : $325.00 USD ということで4万円程度あれば買えます。…

さくらサーバー(スタンダート)にnumpyをインストールする

結論から以下でインストールできる。 pip install numpy==1.6.1 バージョン指定なしだと以下のエラーがでる。。。 numpy/core/src/npymath/npy_math_complex.c.src: In function 'npy_ccoshf': numpy/core/src/npymath/npy_math_complex.c.src:643: error: i…

cocos2dxでSprite or TMXTiledMap を読み込んでもNullや画像が表示されない現象の解決方法

png/tmxを読み込んでもNULLや画像が表示されない現象が発生した時の解決方法 ググってみたら以下のサイトに辿り着いた。 http://qiita.com/rustlica/items/d6c7c6dcf03d682d58b1 これをするとpng/tmxが正常に表示するようになる。 TMXTiledMapもpngを読み込…

無料になったXamarinStudioをインストールしてみた

無料になったXamarinStudioをインストールしてみた。 手順は以下の通り 以下のDownloadボタンを押下 https://store.xamarin.com/ 名前とメールアドレス、会社名(個人の場合はpersonalとか?)チェックボックスにチェックを入れてDownload Xamarin Studio for…

 fastlaneインストール中にエラーがでた(ERROR: Failed to build gem native extension)

PCの再インストール中にfastlaneインストール時に以下のエラーが発生した。 エラー内容 ============================= MacBook-Air:proj.ios_mac ***$ sudo gem install fastlanePassword:Building native extensions. This could take a while...ERROR: Er…

cocoapodsで導入したnendのライブラリ(libNendAd.a)リンク時にエラーになる件の修正

XCode7を使ってcocos2dx+cocoapods(Nend + Admob)で作ったアプリをビルドするとリンク時に以下のエラーがでる。 libNendAd.a(NADInterstitialWebView.o)' does not contain bitcode. You must rebuild it with bitcode enabled (Xcode setting ENABLE_BITCOD…

fastlaneを使ってみた。(deliver スクリーンショット編)

続いてdeliverを使ってスクリーンショットをアップロードしてみた。 deliver設定(./fast/Deliverfile) deliver設定ファイル(./fastlane/Deliverfile)に以下の3つを設定する screenshots_path "スクリーンショットのパス" app_identifier "識別子" versi…

fastlaneを使ってみた(snapshot編)

fastlaneのsnapshotという機能を使うと各エミュレータでスクリーンショットを自動で取ってくれる。試しに機能を使ってみた。 snapshotの設定を行う。 snapshotを取得するアプリの設定します。 ./fastlane/Snapfile 言語設定 languages([ 'en-US', 'de-JP',])…

fastlaneをインストールしてみた。

スクリーンショットとか撮るの面倒だったので、fastlaneっていうツールをインストールしてみた。 fastlaneインストール sudo gem install fastlane --verbose インストール後に一度terminalを起動しなおしてください。 使い方 プロジェクトフォルダに移動 co…

Unity Find、getComponentの使い方について

Unityで他のオブジェクトに対して操作したい時、FindやGetComponent等で操作する必要があります。 Find/GetCompoentの違いがわからなくて結構ググったのでまとめておきます。 GameObjectとComponentの関係 1つのGameObjectに複数のComponentが実装されてい…

Cocos2dx onEnterまでにpauseしてもrunActionで実行したアニメーションは止まらない!

ちょっとハマったのでメモしておきます。 cocos2dxでLayerのinitとかでpauseを使ってアニメーション止めようとしても画面上では止まりません。 これはNodeのonEnter時にresumeを実行しているためだと思います。 initでpauseしてもその後のonEnterで実行され…

Cocos2dxパフォーマンス ClippingNodeの描画が重い、、、

スライムの大逆襲というアプリが「重い」と言われているので調査してみたところ ClippingNodeの処理が重いことがわかりました。。。 ClippingNodeではなく通常のSpriteでの描画に変えたところ 71%→41%になった。 組み込み方が悪いのだろうか?

iOS(iPhone)で特定開発者が開発したアプリを表示する。

iOS

アプリから自分のアプリを紹介したい場合などに使えます。 以下のコードで実現できます! コード #define URL_OWNER_APP @"itms-apps://itunes.com/apps/ここに名前を入力" +(void)showAppList{ NSURL *url = [NSURL URLWithString:URL_OWNER_APP]; [[UIAppl…

AppAnnieにサブアカウントを登録してセキュリティ対策をしてみた。

App

AppAnnieは自分のアプリのランキング情報など簡単に情報収集できるサイトです。 AppAnnie https://www.appannie.com/jp/ AppAnnieを使うには開発者アカウントの登録が必要で抵抗があります。そこでサブアカウントを作成して登録することができたのでやり方を…

Cocos2dx Tiledで作成したmapファイルの回転値とIDが読み込めない。

Tiled Map Editor(http://www.mapeditor.org/)でオブジェクトの回転を設定しても以下のコードで読み込めない。 コード 上記コードを書いたところid/rotationが読み込めません。 TMXObjectGroup* objectGroup = map->getObjectGroup(groupname);ValueVector…

Androidで特定開発者が開発したアプリをPlayStoreやWebで表示する。

アプリから自分のアプリを紹介したい場合などに使えます。 以下のURIでintentを投げてやればOK URI market://search?q=pub:ユーザー名 http://play.google.com/store/search?q=pub:ユーザー名 コード startActivity(new Intent( Intent.ACTION_VIEW, Uri.par…

Submit中にThe Info.plist in the package must contain the CFBundleShortVersionString key.エラーが出た時の対策

iOS

PROJECTの下にあるTARGETSから対象のTARGETS選択後、GeneralタブにあるIdentityのVersionに適当な数字を入力して再度ArchiveすればOK

効果音、バックグランドミュージックの音量調整

効果音とバックグランドミュージックの音量は以下で調整が可能 // 音量設定 SimpleAudioEngine::getInstance()->setEffectsVolume(1.0f); SimpleAudioEngine::getInstance()->setBackgroundMusicVolume(1.0f); // 音量取得 float effectVolume = SimpleAudio…

永遠に回転しつずけるアニメーション

表題の通り回転を続けるアニメーションの作り方 コード RotateBy * rotate = RotateBy::create(0.5f, 360);RepeatForever * repeat = RepeatForever::create(rotate);sprite->runAction(repeat); このコードで剣が回転を続けるアニメーションを実現できる。

Spriteを逆にする。

画像を単純に逆向きにしたい場合の方法 これを これにする方法 Spriteの以下のメソッドを呼べばOK コード // 逆にする mSpriteCharactor->setFlippedX(true); // 元に戻す mSpriteCharactor->setFlippedX(false);

ScrollViewのスクロールを止めてみた。

ということで表題の通りScrollViewのスクロールを止めてみた。 メニュー表示中にスクロールさせたくない時とかに使えるはず。 コード // スクロールを無効にする。 scrollView->setTouchEnabled(false); // スクロールを有効にする。 scrollView->setTouchEn…

ScrollViewを使ってみた。

アプリ開発時にスクロールさせたい画面がありそこにScrollViewを採用してみた。 コーディングとかをまとめて書いておく。 コード ScrollView * scroll = ScrollView::create(size); scroll->setContainer(addLayer);scroll->setDirection(ScrollView::Direct…

数字3桁ごとに「,」を入れる方法

ゲームでお金を表示するときに3桁ごとに「,」を入れて表示することが多いのですが、 その実装方法を載せておきます。 コード const char * getNumComma(double num){ String * str = String::create(""); do{ int add = (int)fmod(num,1000); num = num / 1…

setHorizontalAlignmentがなぜか聞かない。回避方法

setHorizontalAlignmentを使ってもアラインされない。。。 というときはsetAnchorPointを使う。原因はわからないけどこれで解決できます。 コード Label * labelTitle = Label::createWithTTF(ttfConfig, title);labelTitle->setColor(Color3B::WHITE);// la…

Macでエスケープシーケンスを使うときはOptionキー押しながら「¥」を押し「\」にする必要があるらしい

etc

macのxcodeを使って開発をしていたところ、printfなどで改行コードが入力できない問題にぶち当たりました。 ¥nと入力しているのに改行されず「n」だけ表示される、、、なぜ?と思って調べてみたらoptionキーを押しなが「¥」を押すことで「\」にする必要があ…

ログ制御方法(お手軽にログを出さなくする方法)

ログをデバッグ時は出したいけどリリース時は出したくない。でも、いちいち消すのが面倒。。。その場合の対処法です。 コード common.h #define COCOS2D_DEBUG 0 test.cpp #include "common.h" int getVal(){ int ret = getPower(); cur = cur + 1; CCLOG("P…

iPhone iOSリーダーボードが閉じないときの対応

リーダーボードの表示は出来ますが、右上にある「完了」を押しても閉じないときの対策をのせておきます。 コード RootViewController.h #import <UIKit/UIKit.h>#import <GameKit/GameKit.h>@interface RootViewController : UIViewController<GKLeaderboardViewControllerDelegate, GKAchievementViewControllerDelegate> {}- (BOOL) prefersStatusBarHidden; RootViewCont</gkleaderboardviewcontrollerdelegate,></gamekit/gamekit.h></uikit/uikit.h>…

Vec2同士の距離を調べる

たまにVec2同士の距離を調べたくなることがあります。そのときはVec2のメソッドのdistanceを使うことで取得できます。 コード Vec2 pos1 = Vec2(1,1); Vec2 pos2 = Vec2(2,2); float distance = pos1.distance( pos2 ); CCLOG("distance %f",distance); 結果…

CallFuncNにパラメータをつける→ラムダ式を使おう

記事が間違えていたため修正しました。 CallFuncNにパラメータをつけたい場合、以前まではCallFuncNDが使えていたようですが、このクラスは非推奨みたいです。現在何が推奨されているか分かりませんが、ラムダ式を使うことでパラメータを渡すことが出来たの…

xcodeの古いバージョンをインストールする(ダウングレードする)

etc

xcode6にしたらビルドが通らなくなったプロジェクトがあるので、一時的に古いバージョンのxcodeにした。方法は以下の通り。 1.Xcode6をアンインストールする Finder→アプリケーションの中にあるXcodeをゴミ箱に捨てる 2.以下のサイトから欲しいXcodeのバー…

オファーウォールが原因でiPhoneアプリがリジェクトされた。理由と対策

etc

本日iPhoneアプリがリジェクトされました。原因は 2.25: Apps that display Apps other than your own for purchase or promotion in a manner similar to or confusing with the App Store will be rejected 日本語に訳すとたぶん以下のような感じ アプリス…

「Xcode cannot run using the selected device.」の対処方法

etc

XCodeで実機デバッグしようとすると以下のエラーがでた。 \ Xcode cannot run using the selected device. No provisioned iOS devices are available with a compatible iOS version. Connect an iOS device with a recent enough version of iOS to run yo…

Cocos2dxでSEをだんだん高音にする方法

ゲームで連続ヒットしたときにseをどんどん高音にしていきたいときがあります。調べてみても方法が乗っていなかったので、メモ代わりにのせておきます。 コード SimpleAudioEngine::sharedEngine()->playEffect("se1.mp3", false , mSeBombPitch, 0.0f, 1.0f…

cocos2dx3.2でAdmobを実装する方法

Cocos2dx 3.2でAdmobを実装するとエラーが発生してAdmobを表示できません。 解決策は簡単。Other Link Flagに「-Objc」を追加するだけ! これでいけるはずです。

GoogleApiClient.ApiOptionsでエラーが発生する件の解決方法(GooglePlayServices)

https://developers.google.com/games/services/downloads/ 上記のページを参考にAndroidのゲームアプリ作成中GoogleApiClient.ApiOptionsのエラーが発生しました。 どこにも解決方法書いてないので解決方法をメモしておきます。 解決方法 ・上の画像のGoogl…

アニメーション完了後のコールバック設定方法

Cocos2dxでrunActionを利用してアニメーションをする場合、アニメーション完了後にコールバックを設定したい場合があります。(例えば、アニメーション完了後に削除するとか) その場合、どのようにしたら設定できるかぐぐってみたところscheduleでアニメー…

cocos2dx3.0Rc0のインストール方法

最近cocos2dx-3.0rcがリリースされましたね。 インストール方法が変わっていたのでまとめます。 Windowsはプロジェクト生成時に何故かエラーが発生する、、、 準備 ・XCode ・AndroidSDK ・AndroidNDK ・ANT インストール AndroidSDK/NDK、ANTをダウンロード…