Beispiel #1
0
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);
            SetContentView(Resource.Layout.content_main);

            webView = FindViewById <WebView>(Resource.Id.LocalWebView);
            webView.Settings.LoadWithOverviewMode = true;


            webView.Settings.JavaScriptEnabled                = true;
            webView.Settings.DomStorageEnabled                = true;
            webView.Settings.UseWideViewPort                  = true;
            webView.Settings.AllowContentAccess               = true;
            webView.Settings.AllowFileAccess                  = true;
            webView.Settings.AllowFileAccessFromFileURLs      = true;
            webView.Settings.AllowUniversalAccessFromFileURLs = true;


            var clientHybrid = new HybridWebViewClient();

            //webView.SetWebViewClient(clientHybrid);

            webView.LoadUrl("file:///android_asset/index.html");
            //const string html = @"<html><head><script type='text/javascript'>window.location.replace('file:///android_asset/index.html')</script></head><body></body></html>";
            //webView.LoadDataWithBaseURL("file:///android_asset/", html, "text/html", "UTF-8", null);
        }
        protected override void OnCreate(Bundle bundle)
        {
            base.OnCreate(bundle);

            SetContentView(Resource.Layout.Hybrid);

            var webView = FindViewById <WebView> (Resource.Id.webView);

            webView.Settings.JavaScriptEnabled = true;

            var hybridClient = new HybridWebViewClient();

            hybridClient.PrintClicked += (sender, e) => {
                var printMgr = (PrintManager)GetSystemService(Context.PrintService);
                printMgr.Print("Razor HMTL Hybrid", webView.CreatePrintDocumentAdapter(), null);
            };

            webView.SetWebViewClient(hybridClient);

            var model = new Model1()
            {
                Text = "Text goes here"
            };
            var template = new RazorView()
            {
                Model = model
            };
            var page = template.GenerateString();

            webView.LoadDataWithBaseURL("file:///android_asset/", page, "text/html", "UTF-8", null);
        }
Beispiel #3
0
        public HybridWebView(WebView uiWebView)
        {
            webView = uiWebView;

            // Use subclassed WebViewClient to intercept hybrid native calls
            var webViewClient = new HybridWebViewClient();

            webView.SetWebViewClient(webViewClient);
            webView.Settings.CacheMode         = CacheModes.CacheElseNetwork;
            webView.Settings.JavaScriptEnabled = true;
            webView.SetWebChromeClient(new HybridWebChromeClient(webView.Context));
        }
        public HybridWebView(WebView uiWebView)
        {
            webView = uiWebView;

            // Use subclassed WebViewClient to intercept hybrid native calls
            var webViewClient = new HybridWebViewClient ();

            webView.SetWebViewClient (webViewClient);
            webView.Settings.CacheMode = CacheModes.CacheElseNetwork;
            webView.Settings.JavaScriptEnabled = true;
            webView.SetWebChromeClient (new HybridWebChromeClient (webView.Context));
        }
Beispiel #5
0
        protected override void OnCreate(Bundle bundle)
        {
            config = ConfigFile.InitializeConfig();

            base.OnCreate(bundle);

            //Intent i = new Intent();
            //i.SetAction(DATAWEDGE_API_ACTION);
            //i.PutExtra("com.symbol.datawedge.api.ENABLE_DATAWEDGE", true);
            //this.SendBroadcast(i);

            // Set our view from the "main" layout resource
            SetContentView(Resource.Layout.Main);

            var webView = FindViewById <WebView>(Resource.Id.webView);

            webView.Settings.JavaScriptEnabled = true;
            webView.Settings.SaveFormData      = false;

            // Use subclassed WebViewClient to intercept hybrid native calls

            HybridWebViewClient hybridWebViewClient = new HybridWebViewClient();

            hybridWebViewClient.initDefaultProfileHandler += new OnInitDefaultProfileHandler(InitDefaultProfile);
            hybridWebViewClient.sentInputCommandHandler   += new OnSentInputCommandHandler(SendInputCommand);

            webView.SetWebViewClient(hybridWebViewClient);

            inputCommandsCollection = new Dictionary <string, Action <object> >();

            inputCommandsCollection.Add("multibarcode", (param) => callBarcodeScan(param));
            var template = new Test();
            var page     = template.GenerateString();

            // Load the rendered HTML into the view with a base URL
            // that points to the root of the bundled Assets folder
            //webView.LoadDataWithBaseURL("file:///android_asset/", page, "text/html", "UTF-8", null);
            //webView.LoadDataWithBaseURL(Android.Net.Uri.Parse(@"/sdcard/www/index.html").ToString(), page, "text/html", "UTF-8", null);
            //webView.LoadUrl("file:///android_asset/Test.html");
            webView.LoadUrl(config.Url);
            webView.KeyPress += WebView_KeyPress;
            //webView.LoadUrl("file:///android_asset/PaginaBarCode.htm");
            //webView.LoadUrl("file:///storage/sdcard0/www/index.html");
            //registerReceivers();

            IntentFilter filter = new IntentFilter();

            filter.AddAction("com.symbol.datawedge.api.RESULT_ACTION");
            filter.AddCategory("android.intent.category.DEFAULT");

            sampleReceiver = new SampleReceiver();
            RegisterReceiver(sampleReceiver, filter);
        }
Beispiel #6
0
        public HybridWebView(WebView uiWebView)
        {
            webView = uiWebView;

            // Use subclassed WebViewClient to intercept hybrid native calls
            var webViewClient = new HybridWebViewClient();

            webView.SetWebViewClient(webViewClient);
            webView.Settings.CacheMode         = CacheModes.CacheElseNetwork;
            webView.Settings.JavaScriptEnabled = true;
            webView.SetWebChromeClient(new HybridWebChromeClient(webView.Context));

            BasePath = PortablePath.Combine(FileSystem.Current.LocalStorage.Path, "www");
            baseUrl  = String.Format("file://{0}/", BasePath);
        }
        public HybridWebView(WebView uiWebView, Context context)
        {
            webView = uiWebView;

            // Use subclassed WebViewClient to intercept hybrid native calls
            var webViewClient = new HybridWebViewClient();

            webView.SetWebViewClient(webViewClient);
            webView.Settings.CacheMode         = CacheModes.CacheElseNetwork;
            webView.Settings.JavaScriptEnabled = true;
            webView.AddJavascriptInterface(new LoginAction(context), "login");
            webView.AddJavascriptInterface(new MeetingService(context), "MeetingService");
            webView.AddJavascriptInterface(new VerificationService(context), "VerificationService");
            webView.AddJavascriptInterface(new SupervisionService(context), "SupervisionService");
            webView.AddJavascriptInterface(new SyncService(context), "Sync");

            webView.SetWebChromeClient(new HybridWebChromeClient(webView.Context));
        }
Beispiel #8
0
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);

            Favorites.Init();
            // Set our view from the "main" layout resource
            SetContentView(Resource.Layout.Main);

            _webView = FindViewById <WebView>(Resource.Id.webView);
            _webView.Settings.JavaScriptEnabled = true;

            // Use subclassed WebViewClient to intercept hybrid native calls
            _viewClient = new HybridWebViewClient();
            _webView.SetWebViewClient(_viewClient);
            _webView.LongClick += (object sender, View.LongClickEventArgs e) => { e.Handled = true; };

            if (_soundPool == null)
            {
                _soundPool   = new SoundPool(6, Stream.Music, 0);
                _soundIds    = new int[6];
                _soundIds[0] = _soundPool.Load(Application, Resource.Raw.E6, 1);
                _soundIds[1] = _soundPool.Load(Application, Resource.Raw.A5, 1);
                _soundIds[2] = _soundPool.Load(Application, Resource.Raw.D4, 1);
                _soundIds[3] = _soundPool.Load(Application, Resource.Raw.G3, 1);
                _soundIds[4] = _soundPool.Load(Application, Resource.Raw.B2, 1);
                _soundIds[5] = _soundPool.Load(Application, Resource.Raw.E1, 1);
            }
            if (_bundle == null)
            {
                _viewClient.ShowChord(_webView, new NameValueCollection());
            }
            else
            {
                _webView.RestoreState(_bundle);
            }
        }
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);

            SetContentView(Resource.Layout.WebViewContainer);

            webView = FindViewById <WebView>(Resource.Id.webView);
            var client = new HybridWebViewClient(this);

            webView.SetWebViewClient(client);
            webView.Settings.JavaScriptEnabled = true;

            var settings = new Classes.Settings(this);

            if (IsShareDialog)
            {
                InitShareDialog();
            }
            else
            {
                if (settings.Theme == AppTheme.Dark)
                {
                    webView.LoadUrl($"{homeUrl}#dark");
                }
                else
                {
                    webView.LoadUrl($"{homeUrl}#light");
                }

                ShowWhatsNewIfNecessary();
            }


            bannerLayout         = FindViewById <RelativeLayout>(Resource.Id.webViewContainer_banner);
            startSessionListener = new CallbackStartSessionListener(this);
            showBannerAdListener = new CallbackShowBanner(this);
            RevMob.StartWithListener(this, startSessionListener, Droid.Config.Secrets.RevMobId);
            UserTrialStatusUpdated();
            TrialHelper.UserTrialStatusChanged += UserTrialStatusUpdated;
            RefreshUserTrialStatus();


            checkClipboardTextTimer = new System.Timers.Timer()
            {
                Interval = 1000,
            };
            checkClipboardTextTimer.Elapsed += CheckClipboardTextTimer_Elapsed;
            checkClipboardTextTimer.Start();

            if (IsInitialized)
            {
                Common.PackageManager.RemoteSystems.CollectionChanged += DevicesCollectionChanged;
                Common.AndroidPushNotifier.Devices.CollectionChanged  += DevicesCollectionChanged;
                return;
            }
            IsInitialized = true;

            if (Common.PackageManager == null)
            {
                Common.PackageManager = new RomePackageManager(this);
                Common.PackageManager.Initialize("com.roamit.service");
            }
            else
            {
                foreach (var item in Common.PackageManager.RemoteSystems)
                {
                    Common.ListManager.AddDevice(item);
                }
            }

            if (Common.AndroidPushNotifier == null)
            {
                InitAndroidPushNotifier();
            }
            else
            {
                foreach (var item in Common.AndroidPushNotifier.Devices)
                {
                    Common.ListManager.AddDevice(item);
                }

                Common.AndroidPushNotifier.Devices.CollectionChanged -= DevicesCollectionChanged;
                Common.AndroidPushNotifier.Devices.CollectionChanged += DevicesCollectionChanged;
            }

            if (Common.MessageCarrierPackageManager == null)
            {
                Common.MessageCarrierPackageManager = new RomePackageManager(this);
                Common.MessageCarrierPackageManager.Initialize("com.roamit.messagecarrierservice");
            }

            InitRomeDiscovery();

            Context context = this;

            Task.Run(async() =>
            {
#if DEBUG
                FirebaseInstanceId.Instance.DeleteInstanceId();
#endif
                await ServiceFunctions.RegisterDevice(context);
                RefreshUserTrialStatus();
            });

            Analytics.TrackPage("WebViewContainerActivity");

            if (settings.AllowToStayInBackground)
            {
                StartService(new Intent(this, typeof(Services.RomeReadyService)));
            }

            CheckForLegacyVersionInstallations();
        }