cocos2d-x调用java接口

1. jni.h , F:\cocos2d-x-3.2\cocos\platform\android\jni\jni\JniHelper.h

2. 如果jni.h没有,去C:\Program Files\Java\jdk1.7.0_05\include\jni.h and C:\Program Files\Java\jdk1.7.0_05\include\win32\jni_md.h copy to VS setup path VC/include

3.

4.

get not static function

from gongsi

std::string PlatformTool::doAction(const std::string &json){

NSString* jsonString = [NSString stringWithUTF8String:json.c_str()];

BOOL match = ([jsonString rangeOfString:@”app_key” options:NSCaseInsensitiveSearch].location != NSNotFound);

if(match){

NSError *error = NULL;

NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@”\”app_key\”:\”.*?\”” options:NSRegularExpressionCaseInsensitive error:&error];

NSString *modifiedString = [regex stringByReplacingMatchesInString:jsonString

options:0

range:NSMakeRange(0, [jsonString length])

withTemplate:@”\”app_key\”:\”\””];

NSLog(@”PlatformTool::doAction %@”,modifiedString);

}else{

NSLog(@”PlatformTool::doAction %@”,jsonString);

}

id jsonObject = [[NSString stringWithUTF8String:json.c_str()] objectFromJSONString];

if ([jsonObject respondsToSelector:@selector(objectForKey:)]) {

NSString *action = [jsonObject objectForKey:@”action”];

if ([action isEqualToString:@”PlatformToolLogin”]) {

PlatformToolLoginDelegate *d = [[PlatformToolLoginDelegate alloc] init];

EGOTextFieldAlertView* alertView = [[EGOTextFieldAlertView alloc] initWithTitle:@”登录”

message:nil

delegate:d

cancelButtonTitle:@”取消”

otherButtonTitles:@”登录”,@”注册”,nil];

NSString* username = [jsonObject objectForKey:@”username”];

NSString* password = [jsonObject objectForKey:@”password”];

[alertView setKeyboardVisibleWhenShow:false];

[alertView addTextFieldWithLabel:@”邮箱” value: username];

[alertView addTextFieldWithLabel:@”密码” value: password];

[alertView textFieldForIndex:0].keyboardType = UIKeyboardTypeEmailAddress;

[alertView textFieldForIndex:0].autocapitalizationType = UITextAutocapitalizationTypeNone;

[alertView textFieldForIndex:0].autocorrectionType = UITextAutocorrectionTypeNo;

[alertView textFieldForIndex:1].secureTextEntry = YES;

[alertView textFieldForIndex:1].returnKeyType = UIReturnKeyDone;

[alertView textFieldForIndex:1].delegate = d;

[alertView show];

[alertView autorelease];

}else if ([action isEqualToString:@”PlatformToolRegister”]) {

PlatformToolRegisterDelegate *d = [[PlatformToolRegisterDelegate alloc] init];

EGOTextFieldAlertView* alertView = [[EGOTextFieldAlertView alloc] initWithTitle:@”注册”

message:nil

delegate:d

cancelButtonTitle:@”取消”

otherButtonTitles:@”注册”,nil];

[alertView setKeyboardVisibleWhenShow:false];

NSString* username = [jsonObject objectForKey:@”username”];

NSString* password1 = [jsonObject objectForKey:@”password1″];

NSString* password2 = [jsonObject objectForKey:@”password2″];

[alertView addTextFieldWithLabel:@”邮箱” value: username];

[alertView addTextFieldWithLabel:@”密码” value: password1];

[alertView addTextFieldWithLabel:@”确认密码” value: password2];

[alertView textFieldForIndex:0].keyboardType = UIKeyboardTypeEmailAddress;

[alertView textFieldForIndex:0].autocapitalizationType = UITextAutocapitalizationTypeNone;

[alertView textFieldForIndex:0].autocorrectionType = UITextAutocorrectionTypeNo;

[alertView textFieldForIndex:1].secureTextEntry = YES;

[alertView textFieldForIndex:2].secureTextEntry = YES;

[alertView textFieldForIndex:2].returnKeyType = UIReturnKeyDone;

[alertView textFieldForIndex:2].delegate = d;

[alertView show];

[alertView autorelease];

}

}

return “”;

}