IBM 환 6.1-에 반환되는 데이터 콜백(에 WL.NativePage.show())undefined
-
21-12-2019 - |
문제
내가 하려고 따라 예에서 이 환 튜토리얼, 보낼 데이터에서 다시 기본 페이지입니다.그러나 그 때 그것을 반환에서 기본 페이지,인수(data
에서)콜백 함수(backFromNativePage(data)
이)정의되지 않습니다.나는 새로운 작업으로 환경이다,그래서 아마도 내가 이렇게 하지가 제대로 하고 있습니까?라고 기대했는 사람할 수 있고 내가 무엇을 하고 있을 수 있다고 잘못입니다.감사합니다!
여기에 무슨 일이 나의 코드는 다음과 같:
Login.java:
public class Login extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
LoginWebViewClient client = new LoginWebViewClient(this);
webView = (WebView) findViewById(R.id.login);
webView.getSettings().setJavaScriptEnabled(true);
webView.setWebViewClient(client);
webView.loadUrl(url);
}
public void setAppDataAndReturn(HashMap<String, String> dataList) {
Intent returnData = new Intent();
for (Map.Entry<String, String> item : dataList.entrySet()) {
returnData.putExtra(item.getKey(), item.getValue());
}
setResult(RESULT_OK, returnData);
finish();
}
}
LoginWebViewClient:
public class LoginWebViewClient extends WebViewClient {
private Login webAct;
private HashMap<String, String> dataList;
public LoginWebViewClient(Login webAct) {
this.webAct = webAct;
}
@Override
public void onPageFinished(WebView view, String url) {
this.dataList = getData(); //returns a HashMap
webAct.setAppDataAndReturn(dataList);
}
AppInit.js:
var backFromNativePage = function(data) {
WL.Logger.error("backFromNativeLoginPage: data= "+ data);
};
var showNativePage = function() {
WL.NativePage.show('com.app.Login', backFromNativePage, {param: 'some value'});
};
는 방법에 의해 나가 사용하는 환전 6.1.0.00-20131219-1900 나는 시험에 안드로이드 4.3 전화입니다.
어떤 도움을 많이 주시면 감사하겠습니다!
편집:
다음과 같은 제안에서@IdanAdar,이것은 어떻게 내가 그것을 변경은 그것을 얻:
AppInit.js:
var showNativePage = function() {
WL.NativePage.show('com.app.Login', function(data) {
WL.Logger.error("backFromNativeLoginPage: data= "+ data);
}, {param: 'some value'});
};
해결책
기반으로 토론 의견:도 정의 콜백 함수 기능으로 대신 변수입니다.
function backFromNativePage(data) {
...
}
다른 팁
나의 코드(를 사용하지 않았 웹 클라이언트부),으로 새로운 프로젝트 및 작동합니다.
다운로드할 수 있습 환경 샘플링 및 테스트?
가장 중요한 것은 기본 페이지 로딩을 위해 당신,의미,당신은 추가 작업을 android-manifest.xml?
할 수 있는 업로드 eclipse 프로젝트를 어딘가에 그래서 나는 그것을 볼 수 있습니다 참여하고 잘못입니다.이것은 정말 작업없이 문제입니다.
제휴하지 않습니다 StackOverflow