2012-05-09 3 views
1

repo 폴더에서 긴 검색을 한 후 안드로이드 용 rhino1_7R2.jar을 찾았습니다. http://code.google.com/p/android-scripting/source/browse/rhino/rhino1_7R2.jar 불행히도 1_7R3은 없습니다.안드로이드, 자바 스크립트, Rhino, JSON

사용중인 스크립트는 1_7R2에없는 JSON.stringify 함수를 사용합니다. Rhino 용 JSON2.js 파일이 있지만 런타임에로드하는 적절한 방법을 모르겠습니다. 문서 및 예제 코드는 약합니다. 문자열로로드하고 실행중인 스크립트 앞에 추가해야합니까? 아니면 더 좋은 방법이 있을까요?

JavaScript를 사용하여 루프에서 일부 계산을 동적으로 평가하고 있습니다. JSON2.js를 자바 스크립트 함수를 호출 할 때마다 앞에 붙이지 않도록하고 싶습니다. 거의 하루 만에 Rhino가 늦은 버전에서 JSON 객체를 지원했으며 아무도 Android로 이식 할 수 없었습니다. 지원이 부족한 또 다른 오픈 소스 프로젝트처럼 보입니다.

포기하고 WebView 메서드 사용을 고려해야합니까? 어떤 아이디어?

답변

1

내가 아는 한, Rhino에서 실행하려는 일부 JavaScript 스크립트가 있습니다. json2 라이브러리를 사용할 수있는 스크립트를 호출 그 후

load("/your/path/json2.js"); 

: 다른 자바 스크립트 파일을로드하려면 load 기능을 사용할 수 있습니다.

var testStr = '{"test" : {"a": "aval", "b" : "bval"}}'; 
var jsonObj = JSON.parse(testStr); 
var a = jsonObj.test.a; 
+0

어떤 폴더에서 읽습니까? 입술/자산? 나는 아침에 제일 먼저하려고 할 것입니다. 그런데 WebScript를 고려할 때마다 작은 스크립트를 실행할 때마다 json2 파일을로드하는 오버 헤드가 발생합니다. 또는 한 번로드하여 더 복잡한 컨텍스트를 다시 사용할 수도 있습니다. 성과에 대한 아이디어/경험 또한 환영 할 것입니다. –

+0

로드 콜에서 json2.js의 전체 경로를 지정해야합니다. json2.js는 꽤 작습니다. 실제로 스크립트에 내용을 복사하는 것을 고려할 수도 있습니다. –

관련 문제