다음과 같이 핸들러에 인텐트를 집어넣어서 작업을 하고있는데요
메인 액티비티에서 유니티플레이어액티비티로 넘어 오지 않고 있습니다.
로그캣창에도 받는 데이터를 표시하기 위한 코드도 작성을 하였습니다.
로그캣창에 이런 문구 출력이 되었습니다.
I : /data/font/config/dfactpre.dat, No such file or directory (2)
I : /data/font/config/sfconfig.dat, No such file or directory (2)
안 넘오는 이유와 해결방안을 받고 싶습니다.
메인 액티비티
mHandler = new Handler(){ //블루투스 데이터 수신 핸들러
public void handleMessage(Message msg){
if(msg.what == MESSAGE_READ){
try {
readMessage = new String((byte[]) msg.obj, "UTF-8");
if((readMessage.indexOf("s") == 0) && (readMessage.indexOf("e") == 21)) {
if(readMessage != null) { // readmessage와 null(빈값)은 같지 않다
String str = readMessage;
test = readMessage.split("");
str0 = readMessage.substring(0,22);
// 모듈에서 넘어오는 데이터에 부호(+,-)값이 포함 되있음
// indexof에 부호값까지 포함함
}
else if(readMessage == null){
readMessage = str0;
}
}
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
mReadBuffer.setText(str0);
dbHelper.insert(readBuffer_X, readBuffer_Y, readBuffer_Z);
String ip = "123456";
String test1 = str0;
Intent intent = new Intent(MainActivity.this,UnityPlayerActivity.class);
intent.putExtra("test1",test1);
intent.putExtra("test",ip)
}
if(msg.what == CONNECTING_STATUS){
if(msg.arg1 == 1)
mBluetoothStatus.setText("Connected to Device: " + (String)(msg.obj));
else
mBluetoothStatus.setText("Connection Failed");
}
}
};
서브 액티비티
protected void onCreate(Bundle savedInstanceState)
{
requestWindowFeature(Window.FEATURE_NO_TITLE);
super.onCreate(savedInstanceState);
mTask = new TimerTask() {
@Override
public void run() {
Intent intent = getIntent(); // 인텐트로 받아오기
String name = intent.getStringExtra("test");
String name1 = intent.getStringExtra("test1");
if (name !=null)
Log.i("test", name);
if(name1 != null)
Log.i("test1",name1);
}
};
mTimer = new Timer();
mTimer.schedule(mTask,0,2000);
mUnityPlayer = new UnityPlayer(this);
setContentView(mUnityPlayer);
mUnityPlayer.requestFocus();
}
// 유니티 3d에서 호출하는 함수
public void CallAndroid(String Msg){
String Message = getIntent().getStringExtra("test1");
UnityPlayer.UnitySendMessage("GameObject","CallUnity", Message);