![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java JavaScript Node.js Objective-C PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Android™) Enable Chilkat Classes in JavaScriptSee more JavaScript ExamplesTo use Chilkat classes in JavaScript, you must first enable them in the host application, as they are disabled by default. Instantiating a disabled class will cause a JavaScript exception. Chilkat classes can be enabled in four local filesystem access modes:sandbox, readOnly, writeOnly, or readWrite. You can also enable all classes in a chosen mode.Note: This example requires Chilkat v11.4.0 or greater.
// Important: Don't forget to include the call to System.loadLibrary // as shown at the bottom of this code sample. package com.test; import android.app.Activity; import com.chilkatsoft.*; import android.widget.TextView; import android.os.Bundle; public class SimpleActivity extends Activity { private static final String TAG = "Chilkat"; // Called when the activity is first created. @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); boolean success = false; // Chilkat classes within JavaScript are disabled by default. // An attempt to instantiate a disabled Chilkat class results in a JavaScript exception. // For example, try the following JavaScript without first enabling the Chilkat class: // sb = new CkStringBuilder(); // sb.Append('Hello World'); // success = sb.WriteFile('c:/aaworkarea/helloWorld.txt','utf-8',true); CkStringBuilder sbJavaScript = new CkStringBuilder(); sbJavaScript.Append("sb = new CkStringBuilder(); sb.Append('Hello World'); success = sb.WriteFile('c:/aaworkarea/helloWorld.txt','utf-8',true);"); CkJs js = new CkJs(); CkJsonObject result = new CkJsonObject(); result.put_EmitCompact(false); // Run the script. This should result in an error because we haven't enabled the Chilkat CkStringBuilder class. success = js.Eval(sbJavaScript,result); if (success == false) { // Examine the result for an exception. Log.i(TAG, result.emit()); // The result contains this: // { // "exception": { // "message": "Cannot create the chilkat object because the chilkat class is disabled in JavaScript. Fix by calling SetCkPermission before calling Eval or CallFunction", // "stack": [ // { // "func": "CkStringBuilder" // }, // { // "func": "<eval>", // "file": "<input>", // "line": 1, // "col": 9 // } // ] // } // } } // Enable the Chilkat CkStringBuilder JavaScript class for readWrite js.SetCkPermission("CkStringBuilder","readWrite"); // The script should work now... success = js.Eval(sbJavaScript,result); Log.i(TAG, "success = " + String.valueOf(success)); // If the CkStringBuilder class is enabled for readOnly or sandbox, then it will fail. // - Chilkat methods that could directly or indirectly write to the filesystem require writeOnly or readWrite access. // - Chilkat methods that read the local filesystem require readOnly or readWrite access. // - Chilkat methods that don't interact with the local filesystem work in any mode including sandbox. js.SetCkPermission("CkStringBuilder","readOnly"); success = js.Eval(sbJavaScript,result); if (success == false) { // Examine the result for an exception. Log.i(TAG, result.emit()); // { // "exception": { // "message": "failed because this Chilkat method requires the writeOnly or readWrite permission", // "stack": [ // { // "func": "WriteFile" // }, // { // "func": "<eval>", // "file": "<input>", // "line": 1, // "col": 67 // } // ] // } // } } } static { System.loadLibrary("chilkat"); // Note: If the incorrect library name is passed to System.loadLibrary, // then you will see the following error message at application startup: //"The application <your-application-name> has stopped unexpectedly. Please try again." } } |
||||
© 2000-2026 Chilkat Software, Inc. All Rights Reserved.