2018年11月27日 星期二

cocos creator 1.9 EditBox 在Android功能不正常

在Android下,若打開輸入法的顯示字詞建議,EditBox,會有取不到文字的情況。
應急解法如下:
cocos2d-x-lite/cocos/platform/android/java/src/org/cocos2dx/lib/
下的Cocos2dxEditBox.java

找到
public void setInputMode(int inputMode)

在 this.setInputType這句之前

加上
this.mInputModeConstraints |= InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS;
把顯示字詞建議關閉即可。

2018年8月19日 星期日

HandleRewardBasedVideoFailedToLoad event received with message: no Fill

雖然也是收不到google獎勵廣告的問題,但有這次有點不太一樣。
功能一直都是正常的,只是突然某一天手機會一直收不到,只會吐標題的訊息。
還好還有別台android設備,試了一下是沒問題的。

猜是google play service又更新的關係吧,用了之前用過的方式:

http://chadgod.blogspot.com/2016/09/unity3d-no-resource-found-that-matches.html

手機上的設定->應用程式->Google Play 服務->管理空間->清除所有資料

這樣就可以了。

這和一般的no Fill錯誤不太一樣,有可能是因為手機上有開發帳號,再加上google play service新舊版本交替的關係吧。

2018年8月12日 星期日

Unity3D 2018 2.2.f1 + google play service + admob

照慣例,版本一換就要花些時間重試了:

mac下的安裝

Unity3D 版本 2018.2.2.f1

play-games-plugin-for-unity 版本 0.9.50
https://github.com/playgameservices/play-games-plugin-for-unity

Google Mobile Ads Unity Plugin 版本 v3.15.0
https://github.com/googleads/googleads-mobile-unity/releases/tag/v3.15.0

External Tools 的Android設定:
android sdk 需要 8.0

jdk 需要 1.8.1,安裝位置可能有些不同,但可以參考如下:
/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home

ndk 是用 r10e
要用IL2CPP就依它建議r13b

設定的地方也有下載鈕,就不列出下載處了。

然後啟動後就崩潰了。

試了以下2種方法選一種就可以解決了。
1. Build System 改為 internal
2. Assets/GooglePlayGames/Plugins/Android/GooglePlayGameManifest.plugin/AndroidMainfest.xml
    裡面的android:value=\ 3498522668 改成 android:value=\u0033498522668
    主要就是 \ 改為 \u003

這裡有解法
https://github.com/playgameservices/play-games-plugin-for-unity/issues/2254

2018年6月8日 星期五

cocos compile -p web -m release出現的WindowsError: [Error 2]



一般在重新建立cocos2d-js的開發環境時會碰到,


因為以為只發怖web平台的功能.


所以執行cocos的setup.py時,就會跳過


NDK_ROOT,ANDROID_SDK_ROOT,ANT_ROOT這3個參數不去設定.


等到要產生release時,就出錯,


將這3個參數設定好就ok了.

2018年4月24日 星期二

pure-ftp 553 Can't open that file: Permission denied

在mac環境下安裝ubuntu的虛擬機後,ubuntu再裝上docker。
docker上安裝好pure-ftp後,用FileZilla ftp登入,上傳mac檔案到虛擬機時碰到了如下錯誤:
553 Can't open that file: Permission denied

最好把ubuntu目錄的擁有者與群組改成和mac檔案上的使用者一樣,
假設檔案使用者為test,ubuntu的ftp目錄為ftpdir:
ubuntu下命令 sudo chown test:test ftpdir
至於docker上的ftp目錄,實測後不需修改。

2018年3月25日 星期日

CodeIgniter在nginx下404錯誤

環境( nginx,php是docker版本)
Ubuntu 16.0.4
CodeIgniter 3.1.5
nginx 1.13.9
php-fpm 5.6.19

先修改nginx容器的 /etc/nginx/conf.d/default.conf

server {

listen 80;


root /var/www/html;

index index.html index.htm index.php;

server_name localhost;

location / {
#注意這個xxxxxxxxx,若CodeIgniter在web資料夾內的某目錄裡,就需要填入對應的路徑
#這個可以輸入網址時,不需要index.php
try_files $uri $uri/ /xxxxxxxxx/index.php;
}


location ~ \.php$ { #這邊也可換成 \.php($|/)
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass php:9000;
fastcgi_index index.php;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param SCRIPT_FILENAM $document_root$fastcgi_script_name;
include fastcgi_params;
}

location ~ /\.ht {
deny all;
}

}


再修改CodeIgniter內的application/config/config.php
這行 $config['uri_protocol'] = 'PATH_INFO';
改成 $config['uri_protocol'] = 'REQUEST_URI';
沒改的話都會跑到welcome頁

也要填上web的域名,不然form_open會跳到內部ip
$config['base_url'] = 'http://xxx.xxx.xxx.xxx:80/';