Commit 9ba1f408d94499187114e05ce3c84324bb9b664b

Authored by perry.werneck@gmail.com
1 parent f9e40aeb

Android - Removendo referências ao código gerado automaticamente na lib3270.java…

… para facilitar o empacotamento
android/Makefile
... ... @@ -89,6 +89,7 @@ libs/armeabi/lib3270.so: jni/lib3270jni.h jni/*.cpp
89 89 icons: $(foreach DIR, $(RESOLUTION), res/drawable-$(DIR)/ic_launcher.png)
90 90  
91 91 clean:
  92 + @JAVA_HOME=$(JDK_HOME) $(ANT) clean
92 93 @rm -fr bin
93 94 @rm -fr obj
94 95 @rm -f jni/lib3270jni.h
... ...
android/src/br/com/bb/pw3270/PW3270Activity.java
... ... @@ -36,7 +36,9 @@ import android.os.Bundle;
36 36 import android.util.Log;
37 37 import android.content.Intent;
38 38 import android.content.res.*;
  39 +import android.webkit.WebResourceResponse;
39 40 import android.webkit.WebView;
  41 +import android.webkit.WebViewClient;
40 42 import android.app.ProgressDialog;
41 43 import android.view.Menu;
42 44 import android.view.MenuInflater;
... ... @@ -69,9 +71,27 @@ public class PW3270Activity extends Activity
69 71 protected void initUI()
70 72 {
71 73 if(host == null)
72   - host = new lib3270(this);
  74 + {
  75 + host = new lib3270(this)
  76 + {
  77 + public String getProgramMessageText(int id)
  78 + {
  79 + String message[] = res.getStringArray(R.array.program_msg);
  80 + try
  81 + {
  82 + return message[id];
  83 + } catch(Exception e)
  84 + {
  85 + return e.getLocalizedMessage();
  86 + }
  87 +
  88 + }
  89 + };
  90 + }
73 91 else
  92 + {
74 93 host.setActivity(this);
  94 + }
75 95  
76 96 Log.d(TAG, "Initializing UI");
77 97  
... ... @@ -81,9 +101,39 @@ public class PW3270Activity extends Activity
81 101  
82 102 // Reference:
83 103 // http://developer.android.com/reference/android/webkit/WebView.html
84   - Log.d(TAG, "Creating Webview");
85   - setContentView(host.setView(new WebView(this)));
86   -
  104 + host.setView(new WebView(this)).setWebViewClient(new WebViewClient()
  105 + {
  106 +
  107 + @Override
  108 + public WebResourceResponse shouldInterceptRequest(WebView view, String url)
  109 + {
  110 + int id = R.raw.index;
  111 + String mime = "text/html";
  112 + int pos = url.lastIndexOf("/");
  113 +
  114 + if(pos >=0 )
  115 + url = url.substring(pos+1);
  116 +
  117 + Log.i(TAG,"Loading [" + url + "]");
  118 +
  119 + if(url.equalsIgnoreCase("jsmain.js"))
  120 + {
  121 + id = R.raw.jsmain;
  122 + }
  123 + else if(url.equalsIgnoreCase("theme.css"))
  124 + {
  125 + mime = "text/css";
  126 + id = R.raw.theme;
  127 + }
  128 +
  129 + // http://developer.android.com/reference/android/webkit/WebResourceResponse.html
  130 + return new WebResourceResponse(mime,"utf-8",host.mainact.getResources().openRawResource(id));
  131 + }
  132 +
  133 + });
  134 +
  135 + setContentView(host.view);
  136 +
87 137 host.view.loadUrl("file:index.html");
88 138 host.initialize();
89 139 }
... ...
android/src/br/com/bb/pw3270/lib3270.java
... ... @@ -41,9 +41,9 @@ import android.os.CountDownTimer;
41 41 import android.preference.PreferenceManager;
42 42 import android.util.Log;
43 43 import android.webkit.WebChromeClient;
44   -import android.webkit.WebResourceResponse;
  44 +// import android.webkit.WebResourceResponse;
45 45 import android.webkit.WebView;
46   -import android.webkit.WebViewClient;
  46 +// import android.webkit.WebViewClient;
47 47 import javax.net.SocketFactory;
48 48 import java.net.Socket;
49 49 import javax.net.ssl.SSLSocketFactory;
... ... @@ -52,7 +52,7 @@ import java.io.DataOutputStream;
52 52  
53 53 // import java.util.Vector;
54 54  
55   -public class lib3270
  55 +public abstract class lib3270
56 56 {
57 57 private static final String TAG = "lib3270";
58 58  
... ... @@ -389,41 +389,17 @@ public class lib3270
389 389 view.getSettings().setLoadWithOverviewMode(true);
390 390 view.getSettings().setJavaScriptEnabled(true);
391 391  
392   - view.setWebViewClient(new WebViewClient()
393   - {
394   -
395   - @Override
396   - public WebResourceResponse shouldInterceptRequest(WebView view, String url)
397   - {
398   - int id = R.raw.index;
399   - String mime = "text/html";
400   - int pos = url.lastIndexOf("/");
401   -
402   - if(pos >=0 )
403   - url = url.substring(pos+1);
404   -
405   - Log.i(TAG,"Loading [" + url + "]");
406   -
407   - if(url.equalsIgnoreCase("jsmain.js"))
408   - {
409   - id = R.raw.jsmain;
410   - }
411   - else if(url.equalsIgnoreCase("theme.css"))
412   - {
413   - mime = "text/css";
414   - id = R.raw.theme;
415   - }
416   -
417   - // http://developer.android.com/reference/android/webkit/WebResourceResponse.html
418   - return new WebResourceResponse(mime,"utf-8",mainact.getResources().openRawResource(id));
419   - }
420   -
421   - });
422   -
423 392 return view;
424 393  
425 394 }
426 395  
  396 + public abstract String getProgramMessageText(int id);
  397 + /*
  398 + {
  399 + return "Message " + Integer.toString(id);
  400 + }
  401 + */
  402 +
427 403 /*---[ Signal methods ]--------------------------------------------------*/
428 404  
429 405 protected void showProgramMessage(int id)
... ... @@ -464,14 +440,7 @@ public class lib3270
464 440 // 14 LIB3270_MESSAGE_CONNECTING
465 441  
466 442 default:
467   - String message[] = res.getStringArray(R.array.program_msg);
468   - try
469   - {
470   - dlgSysMessage.setMessage(message[id]);
471   - } catch(Exception e)
472   - {
473   - dlgSysMessage.setMessage(e.getLocalizedMessage());
474   - }
  443 + dlgSysMessage.setMessage(getProgramMessageText(id));
475 444 dlgSysMessage.show();
476 445 }
477 446 }
... ...