package com.forcs.android;
import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.app.AppCompatActivity;
import android.content.DialogInterface;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.FrameLayout;
// import OZ Viewer API
import oz.api.OZReportAPI;
import oz.api.OZReportCommandListener;
import oz.api.OZReportViewer;
public class MainActivity extends AppCompatActivity {
// Load OZ Viewer library
static {
try {
System.loadLibrary("skia_android");
System.loadLibrary("ozrv");
} catch (Exception e) {
Log.e("OZRV", "Cannot load OZ Viewer library");
e.printStackTrace();
}
}
private FrameLayout mLayout; // declare content view for OZ Viewer
private OZReportViewer mViewer; // declare OZ Viewer
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mLayout = new FrameLayout(this);
setContentView(mLayout);
openViewer();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle presses on the action bar items
switch (item.getItemId()) {
case R.id.action_btn1:
submit();
return true;
default:
return super.onOptionsItemSelected(item);
}
}
private void openViewer() {
closeViewer();
String params = "connection.servlet=http://oz.ozeform.io/oz/server";
params += "\n" + "connection.reportname=demo/customer.ozr";
mViewer = OZReportAPI.createViewer(mLayout, new OZReportCommandListener() {}, params);
}
private void closeViewer() {
if(mViewer != null) {
mViewer.dispose();
mViewer = null;
}
}
private void submit() {
String result = mViewer.GetInformation("INPUT_CHECK_VALIDITY");
if (result.equals("valid")) {
String data = mViewer.GetInformation("INPUT_JSON_ALL");
dialogBox(data);
}
}
private void dialogBox(String data) {
AlertDialog.Builder dialog=new AlertDialog.Builder(this);
dialog.setMessage(data);
dialog.setTitle("Input Data");
dialog.setPositiveButton("OK",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
return;
}
});
AlertDialog alertDialog=dialog.create();
alertDialog.show();
}
@Override
protected void onDestroy() {
super.onDestroy();
closeViewer();
}
}