Пример #1
0
        protected override async Task StartListeningAsync()
        {
            await base.StartListeningAsync();

            AndroidTelephonyOutgoingBroadcastReceiver.OUTGOING_CALL += _outgoingCallCallback;
            _telephonyManager.Listen(_idleIncomingCallListener, PhoneStateListenerFlags.CallState);
        }
Пример #2
0
        void HandleSignalStrengthChanged(int strength)
        {
            try
            {
                this.SignalStrengthChanged -= HandleSignalStrengthChanged;
                _telephonyManager.Listen(_signalStrengthListener, PhoneStateListenerFlags.None);

                SignalStrength = strength;
            }
            catch (Exception ex)
            {
                SignalStrength = 0;
            }
        }
Пример #3
0
        protected override void OnCreate(Bundle savedInstanceState)
        {
            TabLayoutResource = Resource.Layout.Tabbar;
            ToolbarResource   = Resource.Layout.Toolbar;

            AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException;

            Test.UsbDevices = new USBDevices();
            Test.Radio      = new Radio();

            UserDialogs.Init(this);

            //register the broadcast receivers
            UsbBroadcastReceiver = new UsbDeviceReceiver(this);
            RegisterReceiver(UsbBroadcastReceiver, new IntentFilter(UsbManager.ActionUsbDeviceDetached));
            RegisterReceiver(UsbBroadcastReceiver, new IntentFilter(UsbManager.ActionUsbDeviceAttached));

            TelephonyManager telephonyManager = (TelephonyManager)GetSystemService(Context.TelephonyService);

            telephonyManager.Listen(new SignalStrengthBroadcastReceiver(), PhoneStateListenerFlags.SignalStrength);
            telephonyManager.Listen(new SignalStrengthBroadcastReceiver(), PhoneStateListenerFlags.SignalStrengths);

            var d2d = Intent.SetClassName("com.pinecone.telephony", "com.pinecone.telephony.D2DService");

            this.BindService(d2d, new D2DService(), Bind.AutoCreate);

            if (false)
            {
                var d2dinfo = "/tmp/qgccmd";
                var unixep  = new UnixEndPoint(d2dinfo);
                var socket  = new Socket(AddressFamily.Unix, SocketType.Stream, ProtocolType.IP);
                socket.Connect(unixep);
                Task.Run(() =>
                {
                    while (true)
                    {
                        byte[] buffer = new byte[100];
                        var readlen   = socket.Receive(buffer);
                        Log.Info("socket", ASCIIEncoding.ASCII.GetString(buffer, 0, readlen));
                        Thread.Sleep(1);
                    }
                });
            }


            base.OnCreate(savedInstanceState);
            global::Xamarin.Forms.Forms.Init(this, savedInstanceState);
            LoadApplication(new App());
        }
Пример #4
0
        public override void Activate()
        {
            var _signalStrengthListener = new GsmSignalStrengthListener();

            _signalStrengthListener.SignalStrengthChanged += HandleSignalStrengthChanged;
            _telephonyManager.Listen(_signalStrengthListener, PhoneStateListenerFlags.SignalStrengths);
        }
Пример #5
0
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);
            SetContentView(Resource.Layout.activity_main);
            towerService = new TowerService();

            recyclerView  = FindViewById <RecyclerView>(Resource.Id.recyclerView);
            layoutManager = new LinearLayoutManager(this);
            recyclerView.SetLayoutManager(layoutManager);
            cellAdapter = new CellAdapter(towerService.GetAll());
            recyclerView.SetAdapter(cellAdapter);

            //Android.Support.V7.Widget.Toolbar toolbar = FindViewById<Android.Support.V7.Widget.Toolbar>(Resource.Id.toolbar);
            //SetSupportActionBar(toolbar);
            FloatingActionButton fab = FindViewById <FloatingActionButton>(Resource.Id.fab);

            fab.Click         += FabOnClick;
            cellText           = FindViewById <TextView>(Resource.Id.cell_text);
            telephony          = GetSystemService(TelephonyService) as TelephonyManager;
            phoneStateListener = new CellListener(ref cellText, telephony);
            telephony.Listen(phoneStateListener, PhoneStateListenerFlags.CellLocation);

            (towerService.GetAll() as ObservableCollection <TowerInfo>).CollectionChanged += (s, e) =>
            {
                cellAdapter.NotifyDataSetChanged();
            };
        }
Пример #6
0
 public void LaunchListener()
 {
     TelManager             = (TelephonyManager)Application.Context.GetSystemService(Context.TelephonyService);
     signalStrengthListener = new GsmSignalStrengthListener();
     TelManager.Listen(signalStrengthListener, PhoneStateListenerFlags.SignalStrength);
     signalStrengthListener.SignalStrengthChanged += HandleSignalStrengthChanged;
 }
Пример #7
0
        private void Realese()
        {
            TelephonyManager tmgr = (TelephonyManager)this.GetSystemService(Service.TelephonyService);

            if (phone_state_listener != null)
            {
                tmgr.Listen(phone_state_listener, PhoneStateListenerFlags.None);
            }
            var shared_prefs = Global.GetSharedPreferences(this);

            shared_prefs.UnregisterOnSharedPreferenceChangeListener(this);

            //var audio_mngr = (AudioManager)GetSystemService(Context.AudioService);
            //AudioFocusRequest result = audio_mngr.AbandonAudioFocus(this);

            if (notification_timer != null)
            {
                notification_timer.Dispose();
                notification_timer = null;
            }
            NotificationManager n_mngr = (NotificationManager)GetSystemService(Service.NotificationService);

            n_mngr.CancelAll();
            Detecting = false;
            //if(_jdtmfController!=null)
            //    _jdtmfController.Dispose();
            initialized = false;
        }
Пример #8
0
        public void StopListening()
        {
            var AppContext = Android.App.Application.Context;
            TelephonyManager telephonyManager = (TelephonyManager)AppContext.GetSystemService(Context.TelephonyService);

            telephonyManager.Listen(PhoneActivityListener, PhoneStateListenerFlags.None);
        }
Пример #9
0
        async void RequestPermissionAsync()
        {
            var status = await CrossPermissions.Current.CheckPermissionStatusAsync <PhonePermission>();

            if (status != PermissionStatus.Granted)
            {
                if (await CrossPermissions.Current.ShouldShowRequestPermissionRationaleAsync(Permission.Phone))
                {
                    // has no permission
                }

                status = await CrossPermissions.Current.RequestPermissionAsync <PhonePermission>();
            }

            if (status == PermissionStatus.Granted)
            {
                //Query permission
                StateListener    phoneStateListener = new StateListener();
                TelephonyManager telephonyManager   = (TelephonyManager)GetSystemService(TelephonyService);
                telephonyManager.Listen(phoneStateListener, PhoneStateListenerFlags.CallState);
            }

            else if (status != PermissionStatus.Unknown)
            {
                //permission denied
            }
        }
Пример #10
0
        public int GetGsmSignalStrenght()
        {
            TelManager.Listen(signalStrengthListener, PhoneStateListenerFlags.SignalStrength);
            signalStrengthListener.SignalStrengthChanged += HandleSignalStrengthChanged;


            return(GsmStrength);
        }
Пример #11
0
        public void StartService()
        {
            _telephonyManager = (TelephonyManager)Application.Context.GetSystemService(Context.TelephonyService);
            _listener         = new CustomPhoneStateListener(this.CallStatedChanged);

            // Note: manifest must have READ_PHONE_STATE permission
            _telephonyManager.Listen(_listener, PhoneStateListenerFlags.CallState);
        }
Пример #12
0
        public override void OnCreate()
        {
            PhoneCallStateListener phoneStateListener = new PhoneCallStateListener(this);
            TelephonyManager       telephonyManager   = (TelephonyManager)GetSystemService(TelephonyService);

            telephonyManager.Listen(phoneStateListener, PhoneStateListenerFlags.CallState);
            _intent = new Intent(ApplicationContext, typeof(MainActivity));
            _intent.SetFlags(ActivityFlags.ClearTop | ActivityFlags.SingleTop);
        }
Пример #13
0
 private void PhoneCallEnded(DateTime start, DateTime end)
 {
     if (phoneListener != null)
     {
         phoneListener.CallEndedEvent -= PhoneCallEnded;
     }
     telephonyManager.Listen(phoneListener, PhoneStateListenerFlags.None);
     phoneListener = null;
     InjectionManager.SendViewModelMessage(callBackKey, true);
 }
Пример #14
0
 private void PhoneCallEnded(DateTime start, DateTime end)
 {
     if (phoneListener != null)
     {
         phoneListener.CallEndedEvent -= PhoneCallEnded;
     }
     telephonyManager.Listen(phoneListener, PhoneStateListenerFlags.None);
     phoneListener = null;
     PhoneCallback.Instance.Complete(true);
 }
Пример #15
0
        public void StartListener()
        {
            var AppContext = Android.App.Application.Context;

            PhoneActivityListener = new PhoneActivityListener(CallMonDelegate);

            TelephonyManager telephonyManager = (TelephonyManager)AppContext.GetSystemService(Context.TelephonyService);

            telephonyManager.Listen(PhoneActivityListener, PhoneStateListenerFlags.CallState);
        }
Пример #16
0
 static PhoneCallManager()
 {
     if (ContextHelper.Current == null)
     {
         throw new InvalidOperationException(
                   "PhoneCallManager was used too early in the application lifetime. " +
                   "Android app context needs to be available.");
     }
     _telephonyManager = (TelephonyManager)ContextHelper.Current
                         .GetSystemService(Context.TelephonyService);
     _telephonyManager.Listen(new CallStateListener(), PhoneStateListenerFlags.CallState);
 }
Пример #17
0
        public override void OnReceive(Context context, Intent intent)
        {
            _Manager = context.GetSystemService(Context.TelephonyService) as TelephonyManager;
            if (_Manager == null)
            {
                return;
            }

            var listener = new PhoneStateListenerEx(context);

            _Manager.Listen(listener, PhoneStateListenerFlags.CallState);
        }
Пример #18
0
 private void InitialiseTelephony()
 {
     //the next bit of code sets up a listener via the telephony manager
     _telephonyManager = (TelephonyManager)GetSystemService(TelephonyService);
     if (_telephonyManager != null)
     {
         _phoneStateListener = new EmergencyPhoneStateListener(this);
         if (_phoneStateListener != null)
         {
             _telephonyManager.Listen(_phoneStateListener, PhoneStateListenerFlags.CallState);
         }
     }
 }
Пример #19
0
        /// <summary>
        /// Loads the app.
        /// </summary>
        /// <param name="bundle"></param>
        protected override void OnCreate(Bundle bundle)
        {
            base.OnCreate(bundle);
            SetContentView(Resource.Layout.Main);
            Window.AddFlags(WindowManagerFlags.KeepScreenOn);

/*        AdView ad = (AdView) findViewById(Resource.Id.adView);
 *      ad.loadAd(new AdRequest());*/
            listen = new MyPhoneStateListener(this);
            tm     = (TelephonyManager)GetSystemService(TelephonyService);
            tm.Listen(listen, PhoneStateListenerFlags.SignalStrengths);

            setPhoneInfo();
        }
 private void SubscribeToIncomingCall(EventHandler <ValueEventArgs <string> > handler)
 {
     using (TelephonyManager telephonyManager = (TelephonyManager)Application.Context.GetSystemService(Application.TelephonyService))
     {
         IncomingCallsListener listener = new IncomingCallsListener(phoneNumber =>
         {
             if (handler != null && phoneNumber != null)
             {
                 handler(this, new ValueEventArgs <string>(phoneNumber));
             }
         });
         telephonyManager.Listen(listener, PhoneStateListenerFlags.CallState);
         _incomingCallsSubscriptions.AddOrUpdate(handler, listener, (h, l) => listener);
     }
 }
Пример #21
0
        public void PlaceCallWithCallBack(string phoneNumber, string callBackKey)
        {
            try
            {
                this.callBackKey              = callBackKey;
                phoneListener                 = new PhoneCallListener();
                telephonyManager              = (TelephonyManager)Ctx.GetSystemService(Context.TelephonyService);
                phoneListener.CallEndedEvent += PhoneCallEnded;

                telephonyManager.Listen(phoneListener, PhoneStateListenerFlags.CallState);
                var intent = new Intent(Intent.ActionCall);
                var uri    = global::Android.Net.Uri.Parse("tel:" + CoreExtensions.ToNumericString(phoneNumber));
                intent.SetData(uri);
                Ctx.StartActivity(intent);
            }
            catch (Exception ex)
            {
                var toast = Toast.MakeText(Xamarin.Forms.Forms.Context, "This activity is not supported", ToastLength.Long);
                toast.Show();
            }
        }
Пример #22
0
        private void Init()
        {
            if (initialized)
            {
                Realese();
            }
            tokenParser = new DTMFTokenParser();

            ISharedPreferences shared_prefs = Global.GetSharedPreferences(this);

            shared_prefs.RegisterOnSharedPreferenceChangeListener(this);
            prefs_model = new PreferencesModel(shared_prefs);

            var audio_mngr           = (AudioManager)GetSystemService(Context.AudioService);
            AudioFocusRequest result = audio_mngr.RequestAudioFocus(this, Stream.Music, AudioFocus.Gain);

            if (prefs_model.Notificando)
            {
                Notificando = true;
            }
            //modoComplemento = prefs_model.Modo_Complemento;

            TelephonyManager tmgr = (TelephonyManager)this.GetSystemService(Service.TelephonyService);

            if (phone_state_listener == null)
            {
                phone_state_listener = new MyPhoneStateListener(this);
            }
            tmgr.Listen(phone_state_listener, PhoneStateListenerFlags.CallState);
            initialized = true;

            Schudled_CallBack = prefs_model.Schudled_Call;

            if ((prefs_model.Teclado_Enabled || prefs_model.Ready) && !Detecting)
            {
                new System.Threading.Timer((o) => {
                    StartDetect();
                }, null, 2000, -1);
            }
        }
Пример #23
0
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);
            SetContentView(Resource.Layout.ClientListView);

            StateListener    phoneStateListener = new StateListener(this);                                       //will be used to check if phone is making a call
            TelephonyManager telephonyManager   = (TelephonyManager)GetSystemService(Context.TelephonyService);

            telephonyManager.Listen(phoneStateListener, PhoneStateListenerFlags.CallState);

            myListView = FindViewById <Android.Widget.ListView>(Resource.Id.listSearchView);

            MySqlConnection  conn1   = new MySqlConnection("Server=sql9.freesqldatabase.com;Port=3306;database=sql9289950;Uid=sql9289950;Pwd=XpDGLinQFp;CharSet=utf8;default command timeout=30;"); //connection to database
            MySqlDataAdapter adapter = new MySqlDataAdapter();

            clients = new List <Client>();   //list of clients with name and phone number
            DataTable db = new DataTable();

            db.Clear();
            clients.Clear();
            adapter.SelectCommand            = new MySqlCommand("SELECT First_Name, Last_Name, Phone_Number FROM Contacts"); //will populate listview with first and last name of client and their phone number
            adapter.SelectCommand.Connection = conn1;
            adapter.Fill(db);


            foreach (DataRow row in db.Rows)
            {
                clients.Add(new Client()
                {
                    First_Name = row[0].ToString(), Last_Name = row[1].ToString(), Phone_Number = row[2].ToString()
                });                                                                                                                             //add clients to list
            }

            ClientListAdapter listAdapter = new ClientListAdapter(this, clients);       //handles the formatting of client items into the listview

            myListView.Adapter = listAdapter;

            myListView.ItemClick += MyListView_ItemClick;
        }
Пример #24
0
        protected override async Task StartListeningAsync()
        {
            await base.StartListeningAsync();

            _telephonyManager.Listen(_cellTowerChangeListener, PhoneStateListenerFlags.CellLocation);
        }
Пример #25
0
 protected override void StartListening()
 {
     _telephonyManager.Listen(_cellTowerChangeListener, PhoneStateListenerFlags.CellLocation);
 }
Пример #26
0
 protected override void StartListening()
 {
     AndroidTelephonyOutgoingBroadcastReceiver.OUTGOING_CALL += _outgoingCallCallback;
     _telephonyManager.Listen(_idleIncomingCallListener, PhoneStateListenerFlags.CallState);
 }
 void DisplaySignalStrength(object sender, EventArgs e)
 {
     _telephonyManager.Listen(_signalStrengthListener, PhoneStateListenerFlags.SignalStrengths);
     _signalStrengthListener.SignalStrengthChanged += HandleSignalStrengthChanged;
 }