NGUIのUiButtonで、タップ時とタップを離した時のイベント取得メモ(ロングタップ等の判定に)

タップイベントを取得したいスクリプトに下記を追記し、

サンプルコード


public void OnPress(bool isDown)
{
Debug.Log("onPress: " + UIEventTrigger.current.name);

if (UIEventTrigger.current.name.Equals("Btn_Boost"))
{
jetBtnFlg = true;
}

}

public void OnRelease()
{

Debug.Log("onRelease:" + UIEventTrigger.current.name);

if (UIEventTrigger.current.name.Equals("Btn_Boost"))
{
jetBtnFlg = false;
}

}

あとは、NGUIのUiButtonに、「UI Event trigger」をアタッチし、

下記キャプチャを参考に、Notifyに「OnPress」と「OnRelease」を伝達したい、
上記コードのGameObjectをセットし、OnPressとOnReleaseメソッドを選択してあげるだけ!

NGUI UI Event Trigger

cocos2d-xのアプリ開発のお気に入り環境メモ

cocos2d-xでAndroidとiOSのアプリ開発で使っている環境メモ

言語&IDE

C++でxcode使ってる、

もうcocos creator使った方がいいみたいですが。

UI&アニメーションの開発エディタ

下記ツールでUIをGUIエディタ作れる。

cocos studio

version3.10で ※注意サポート終了

下記からダウンロード可能

http://cocos2d-x.org/docs/deprecated/studio/

メモ

  • 下記particle2dxのplistをそのまま取り込める。
  • opacityや、colorのアニメーションも、デフォルトだとタイムラインに表示されないが、record frame の✅を入れると表示される。

パーティクル用のエディタ

Particle2dx

http://particle2dx.com/
* オリジナルの画像がアップロードできないようなので、一度エクスポートしてから、画像ファイル名をplistをテキストエディタで開いて変更する。
* もしくは、エクスポート時の画像ファイル名と同じ画像ファイルで上書き。

シェーダー周り

cocos2dx用というわけでないないがシェーダーのデモに使える

http://glslsandbox.com/e#38793.0

Unity5で、「System.Reflection.ReflectionTypeLoadException: The classes in the module cannot be loaded.」のエラー

Unity5IAP

Unity5.4を久々開いたら、下記エラーで実行できない。


Unhandled Exception: System.Reflection.ReflectionTypeLoadException: The classes in the module cannot be loaded. at (wrapper managed-to-native) System.Reflection.Assembly:GetTypes (bool) at System.Reflection.Assembly.GetTypes () [0x00000] in <filename unknown>:0 at Mono.CSharp.RootNamespace.ComputeNamespaces (System.Reflection.Assembly assembly, System.Type extensionType) [0x00000] in <filename unknown>:0 at Mono.CSharp.RootNamespace.ComputeNamespace (Mono.CSharp.CompilerContext ctx, System.Type extensionType) [0x00000] in <filename unknown>:0 at Mono.CSharp.GlobalRootNamespace.ComputeNamespaces (Mono.CSharp.CompilerContext ctx) [0x00000] in <filename unknown>:0 at Mono.CSharp.Driver.LoadReferences () [0x00000] in <filename unknown>:0 at Mono.CSharp.Driver.Compile () [0x00000] in <filename unknown>:0 at Mono.CSharp.Driver.Main (System.String[] args) [0x00000] in <filename unknown>:0 The following assembly referenced from mygame/Assets/Plugins/UnityPurchasing/Bin/Stores.dll could not be loaded:

色々いじった結果、Unity5のIAP(アプリの課金機能)が影響していたらしく、IAPのをアップデートしたら改善された。。

アップデートは、 Window -> Services に IAP(課金機能)があるので、
それをONに、ImportしなおせばOK!!

Unity5IAP

android studioで、「Error:Execution failed for task ‘:app:validateSigningRelease’. > Keystore file」というエラーが出たら

android studioで、「Error:Execution failed for task ‘:app:validateSigningRelease’. > Keystore file」と出た時

Android Studio2.2を使っていて、いきなり下記エラーにでくわした。


Error:Execution failed for task ':app:validateSigningRelease'. > Keystore file

既存のプロジェクトをファイルをコピーしてから作ったのがよくなかったのかな、
keystore のファイルも新しく作り直したはずなのに、このエラーが消えない

解決策

  • Make Rebuild」や、「Android Studio」を再起動したらエラーがでなくなりましたわ汗

Android Studioで「Error running app: Unknown run configuration type AndroidRunConfigurationType」でビルドできなくなった

Android Studio2.2で、急にビルドができなくなった。

android studio app

Runで実行する「app」がUnknownになって下記エラーになっている。


Error running app: Unknown run configuration type AndroidRunConfigurationType

試行錯誤

1. プロジェクトがおかしくなったのかなと思って、いままで普通に動いていたプロジェクトも実行できなくなっている

2. PC再起動や、AndroidStudioが壊れたかなと思って再インストールして、実行かわらず。JDK周りでエラーがでていたので、次は

3. JDKをインストールしてアップデート

4. 他にもSDK Managerで、プラグイン系を見てみると、Firebase周りで、なんやらエラーが、「Firebase testing」というチェックを外して、[Make Project]をしてみると、、、、

5. 、、、、、!!を、ちゃんとappモジュールがUnkownじゃなくなって、、無事解決!実行できました!!

adbでAndroid端末やエミュレータのファイルを覗く方法

adbで端末やエミュレータのファイルを覗く方法

1. ターミナルを開き、

2. adbでアクセスできるデバイスを確認


$ adb devices

3. adbで端末orエミュレータにアクセスしてファイルチェック

端末にログイン


$ adb -s emulator-5556 shell

対象ファイルがあるかチェック


$ ls -la /data/data/アプリのパッケージ名/files/test.png

※OSバージョンや端末によって使えるlinuxコマンドが限られていそう

端末のファイルをmac等ローカルPCにひっぱってくる


$ adb -s emulator-5556 pull /data/data/アプリのパッケージ名/files/test.png

アプリ内のファイルを確認する。Android Studio2.2でDDMSを開く方法備忘録

DDMSの開く方法

画面上部のメニューから

Tools -> Android -> Android Device Monitor

参考:http://stackoverflow.com/questions/39761453/no-shortcut-for-ddms-in-android-studio-2-2

ありがとうございます!!

Android2.2にアップデートしてから、
DDMSの見方がわからくなってしまってので忘れないようにメモ。。

swift2.3 シェア機能で、「Cannot assign value of type ‘(_, Bool, Array<_>!, NSError!) -> ()’ to type ‘UIActivityViewControllerCompletionWithItemsHandler?’」エラーが

swift2.3で友達いないけど、友達にシェアする機能を実装してたら、

こんなエラーが。。w


Cannot assign value of type '(_, Bool, Array<_>!, NSError!) -> ()' to type 'UIActivityViewControllerCompletionWithItemsHandler?'

いままでつい最近までエラーじゃなかったのに、xcode8&swift2.3に更新したからか。。

UIActivityViewControllerでシェア機能を実装していると、
皆さんぶつかると思うので対応方法。
英語の記事はめちゃくちゃあったのですが、何故か日本の記事はなかったので一応。


activityVC.completionWithItemsHandler = { (s: String?, complete: Bool, items: [AnyObject]?, err:NSError?) -> Void in if (complete) { printf("完了") }else{ printf("失敗") } }

completionWithItemsHandlerの引数を調整すればOKでした!

これでtwitterfacebook等に投稿したかどうか判定できる!

やっほい

xcode8 swift2.3でRealmSwiftを使う際にpod installで下記エラーがでた

最近xcodeをxcode8にして、色々かわりすぎて戸惑いを隠せない、
小心者筆者です。。

いままでxcode7.3かな?で動かしていたRealm Swiftが使えなくなったのでメモ。
前提として、xcode8でswift2.3を使った場合です。

Podfileで下記のようにrealmをインストールしていたのですが


pod 'RealmSwift'

pod install するとっこのようなエラー


$ pod install /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/universal-darwin15/rbconfig.rb:213: warning: Insecure world writable dir /Applications/Cocos/tools/ant/bin in PATH, mode 040777 Analyzing dependencies Pre-downloading: `RealmSwift` from `https://github.com/realm/realm-cocoa.git`, branch `master`, submodules `true` [!] Unable to satisfy the following requirements: - `Realm (= 2.0.2)` required by `RealmSwift (2.0.2)` None of your spec sources contain a spec satisfying the dependency: `Realm (= 2.0.2)`. You have either: * out-of-date source repos which you can update with `pod repo update`. * mistyped the name or version. * not added the source repo that hosts the Podspec to your Podfile. Note: as of CocoaPods 1.0, `pod repo update` does not happen on `pod install` by default.

で、下記で解決


pod 'Realm', :git => 'https://github.com/realm/realm-cocoa.git', :branch => 'master', :submodules => true pod 'RealmSwift', :git => 'https://github.com/realm/realm-cocoa.git', :branch => 'master', :submodules => true

はいそれだけ。っす

xcode上のソースに記載される Copyrightを変更する

// // AppDelegate.swift // hogeApp // // Created by foooooooo on 15/10/15. // Copyright © 2015 hoge corp. All rights reserved. //

xcode7.3xでソース上に自動で挿入される、会社名等のCopyrightを変更する方法。

// //  AppDelegate.swift //  hogeApp // //  Created by foooooooo on 15/10/15. //  Copyright © 2015 hoge corp. All rights reserved. //


// // AppDelegate.swift // hogeApp // // Created by foooooooo on 15/10/15. // Copyright © 2015 hoge corp. All rights reserved. //

こういうの。

変更方法

自分のプロジェクトファイルを選択↓

hogeApp

次に右のメニュに下記が表示されるので、Project DocumentsOrganizationの項目を変更!

copyright xcode
copyright xcode

参考になれば幸いです!