SlideShare une entreprise Scribd logo
1  sur  19
Real World State and Notification Broker Michele Locuratolo In collaborazione con
Agenda What is the State and Notification Broker Reading a System State Reacting to changes Application launcher
What is the State and Notification Broker: Il a set of API which allow developers to: Monitoring the System State in managed code: We have more then 100 states exposed React on system state changes Create custom states
Now we have: A consistent model to access and manage the system states No P/Invoke! 100% Managed code! A lot of states exposed (more then 100)
A BIG difference
Read the battery state DEMO
Reacting to a changes Create an instance of the specific state Register to the .Changes event Implement your code 
React to the battery state changes DEMO
How we can use it (in a real world scenario)? We can: Disable  buttons /menu when the battery strength is low Send data before battery goes down …
ActiveSyncStatus PhoneCallForwardingOnLine1 CradlePresent MessagingMmsUnread MessagingOtherEmailUnread MessagingLastEmailAccountName MessagingTotalEmailUnread PhoneLastIncomingCallerName MediaPlayerTrackGenre MediaPlayerTrackTitle HeadsetPresent PhoneIncomingCallerNumber ConnectionsVpnDescriptions MessagingSmsUnread PhoneIncomingCallerName KeyboardPresent PhoneSimFull WiFiStateConnected MessagingVoiceMailTotalUnread OwnerName ConnectionsProxyCount PhoneCallOnHold PhoneActiveCallCount MediaPlayerTrackArtist WiFiStatePowerOn TasksActive PhoneMissedCall CalendarEventBusyStatus MessagingActiveSyncAccountName DisplayRotation PhoneCallCalling PhoneCallBarring PhoneActiveDataCall CameraPresent PhoneBlockedSim PhoneIncomingCallerContact PhoneGprsCoverage WiFiStateNetworksAvailable PhoneMissedCalls ConnectionsCount Phone1xRttCoverage TasksHighPriority PhoneIncomingCallerContactPropertyName
Behind the scenes: The Windows Mobile Registry is the central repository: SystemState: for the predefined states RegistryState: for the custom  state
Creating your own state: Crate an instance of the RegistryState Class React to the changes like the classic SystemState
Create your own state DEMO
Application Launcher Start an application when a monitored state changes StateBase implements IApplicationLaucher interface The IApplicationLaucher has the capability to start an application Information about the application to start are stored in the Registry
ApplicationLauncher DEMO
Remarks You can start directly when a state changes… SystemStatemonitoredState = newSystemState(SystemProperty.PowerBatteryBackupStrength); monitoredState.EnableApplicationLauncher("MyCoolApp"); …or when a state arrives to a specified value SystemStatemonitoredState = new SystemState(SystemProperty.PowerBatteryBackupStrength); monitoredState.ComparisonType = StatusComparisonType.Less; monitoredState.ComparisonValue = BatteryLevel.Low; monitoredState.EnableApplicationLauncher("MyCoolApp"); The second application is not running before the state value doesn’t match with the criteria
In conclusion…. Windows Mobile exposes more then 100 different states When you need to interact with any kind of system notifications, check the System States You can create your own state Use the S&N API to produce a better software Check out this open source application which uses this APIs http://www.codeplex.com/MobilePhoneAssistant
ActiveSyncStatus PhoneCallForwardingOnLine1 CradlePresent MessagingMmsUnread MessagingOtherEmailUnread MessagingLastEmailAccountName MessagingTotalEmailUnread PhoneLastIncomingCallerName MediaPlayerTrackGenre MediaPlayerTrackTitle HeadsetPresent PhoneIncomingCallerNumber ConnectionsVpnDescriptions MessagingSmsUnread PhoneIncomingCallerName KeyboardPresent PhoneSimFull WiFiStateConnected MessagingVoiceMailTotalUnread OwnerName ConnectionsProxyCount PhoneCallOnHold PhoneActiveCallCount MediaPlayerTrackArtist WiFiStatePowerOn TasksActive PhoneMissedCall CalendarEventBusyStatus MessagingActiveSyncAccountName DisplayRotation PhoneCallCalling PhoneCallBarring PhoneActiveDataCall CameraPresent PhoneBlockedSim PhoneIncomingCallerContact PhoneGprsCoverage WiFiStateNetworksAvailable PhoneMissedCalls ConnectionsCount Phone1xRttCoverage TasksHighPriority PhoneIncomingCallerContactPropertyName
Link 17/01/2008 www.xedotnet.org 19 Michele Locuratolo http://www.michelelocuratolo.com michele@locuratolo.com http://www.michelelocuratolo.com Twitter.com/mighell

Contenu connexe

Similaire à Real World State And Notification Broker

Programming models for event controlled programs
Programming models for event controlled programsProgramming models for event controlled programs
Programming models for event controlled programsPriya Kaushal
 
Unit 4- State Machine in mobile programming
Unit 4- State Machine in mobile programmingUnit 4- State Machine in mobile programming
Unit 4- State Machine in mobile programmingLeahRachael
 
Jetpack Compose untuk UI Masa Depan Bagian 2 - Sidiq Permana
Jetpack Compose untuk UI Masa Depan Bagian 2 - Sidiq PermanaJetpack Compose untuk UI Masa Depan Bagian 2 - Sidiq Permana
Jetpack Compose untuk UI Masa Depan Bagian 2 - Sidiq PermanaDicodingEvent
 
Rise of state_machines
Rise of state_machinesRise of state_machines
Rise of state_machinesMounir Boudraa
 
Write better, stronger, faster behat steps with ScenarioStateBehatExtension
Write better, stronger, faster behat steps with ScenarioStateBehatExtensionWrite better, stronger, faster behat steps with ScenarioStateBehatExtension
Write better, stronger, faster behat steps with ScenarioStateBehatExtensionRodrigue Villetard
 
State transition testing-software_testing
State transition testing-software_testingState transition testing-software_testing
State transition testing-software_testingMidhun S
 
React state
React  stateReact  state
React stateDucat
 
STATE DIAGRAM.pptx
STATE DIAGRAM.pptxSTATE DIAGRAM.pptx
STATE DIAGRAM.pptxssuser2d043c
 
Lagom - Persistent Entity
Lagom - Persistent EntityLagom - Persistent Entity
Lagom - Persistent EntityKnoldus Inc.
 
Introduction to State Machines
Introduction to State MachinesIntroduction to State Machines
Introduction to State Machinescodeofficer
 
Reduxing UI: Borrowing the Best of Web to Make Android Better
Reduxing UI: Borrowing the Best of Web to Make Android BetterReduxing UI: Borrowing the Best of Web to Make Android Better
Reduxing UI: Borrowing the Best of Web to Make Android BetterChristina Lee
 
Software System Engineering - Chapter 14
Software System Engineering - Chapter 14Software System Engineering - Chapter 14
Software System Engineering - Chapter 14Fadhil Ismail
 
C:\documents and settings\student\desktop\swaroop uml
C:\documents and settings\student\desktop\swaroop umlC:\documents and settings\student\desktop\swaroop uml
C:\documents and settings\student\desktop\swaroop umlsatyaiswaroop
 
What 100M downloads taught us about iOS architectures
What 100M downloads taught us about iOS architecturesWhat 100M downloads taught us about iOS architectures
What 100M downloads taught us about iOS architecturesFrancesco Di Lorenzo
 
Observer Pattern Khali Young 2006 Aug
Observer Pattern Khali Young 2006 AugObserver Pattern Khali Young 2006 Aug
Observer Pattern Khali Young 2006 Augmelbournepatterns
 
Declarative presentations UIKonf
Declarative presentations UIKonfDeclarative presentations UIKonf
Declarative presentations UIKonfNataliya Patsovska
 
States, state graphs and transition testing
States, state graphs and transition testingStates, state graphs and transition testing
States, state graphs and transition testinggeethawilliam
 
Software engineering rogers pressman chapter 7
Software engineering rogers pressman chapter 7Software engineering rogers pressman chapter 7
Software engineering rogers pressman chapter 7mohammad hossein Jalili
 

Similaire à Real World State And Notification Broker (20)

Programming models for event controlled programs
Programming models for event controlled programsProgramming models for event controlled programs
Programming models for event controlled programs
 
Unit 4- State Machine in mobile programming
Unit 4- State Machine in mobile programmingUnit 4- State Machine in mobile programming
Unit 4- State Machine in mobile programming
 
Jetpack Compose untuk UI Masa Depan Bagian 2 - Sidiq Permana
Jetpack Compose untuk UI Masa Depan Bagian 2 - Sidiq PermanaJetpack Compose untuk UI Masa Depan Bagian 2 - Sidiq Permana
Jetpack Compose untuk UI Masa Depan Bagian 2 - Sidiq Permana
 
Rise of state_machines
Rise of state_machinesRise of state_machines
Rise of state_machines
 
Write better, stronger, faster behat steps with ScenarioStateBehatExtension
Write better, stronger, faster behat steps with ScenarioStateBehatExtensionWrite better, stronger, faster behat steps with ScenarioStateBehatExtension
Write better, stronger, faster behat steps with ScenarioStateBehatExtension
 
State transition testing-software_testing
State transition testing-software_testingState transition testing-software_testing
State transition testing-software_testing
 
Reducers+flux=redux
Reducers+flux=reduxReducers+flux=redux
Reducers+flux=redux
 
React state
React  stateReact  state
React state
 
Seminar State Chart1
Seminar State Chart1Seminar State Chart1
Seminar State Chart1
 
STATE DIAGRAM.pptx
STATE DIAGRAM.pptxSTATE DIAGRAM.pptx
STATE DIAGRAM.pptx
 
Lagom - Persistent Entity
Lagom - Persistent EntityLagom - Persistent Entity
Lagom - Persistent Entity
 
Introduction to State Machines
Introduction to State MachinesIntroduction to State Machines
Introduction to State Machines
 
Reduxing UI: Borrowing the Best of Web to Make Android Better
Reduxing UI: Borrowing the Best of Web to Make Android BetterReduxing UI: Borrowing the Best of Web to Make Android Better
Reduxing UI: Borrowing the Best of Web to Make Android Better
 
Software System Engineering - Chapter 14
Software System Engineering - Chapter 14Software System Engineering - Chapter 14
Software System Engineering - Chapter 14
 
C:\documents and settings\student\desktop\swaroop uml
C:\documents and settings\student\desktop\swaroop umlC:\documents and settings\student\desktop\swaroop uml
C:\documents and settings\student\desktop\swaroop uml
 
What 100M downloads taught us about iOS architectures
What 100M downloads taught us about iOS architecturesWhat 100M downloads taught us about iOS architectures
What 100M downloads taught us about iOS architectures
 
Observer Pattern Khali Young 2006 Aug
Observer Pattern Khali Young 2006 AugObserver Pattern Khali Young 2006 Aug
Observer Pattern Khali Young 2006 Aug
 
Declarative presentations UIKonf
Declarative presentations UIKonfDeclarative presentations UIKonf
Declarative presentations UIKonf
 
States, state graphs and transition testing
States, state graphs and transition testingStates, state graphs and transition testing
States, state graphs and transition testing
 
Software engineering rogers pressman chapter 7
Software engineering rogers pressman chapter 7Software engineering rogers pressman chapter 7
Software engineering rogers pressman chapter 7
 

Dernier

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 

Dernier (20)

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 

Real World State And Notification Broker

  • 1. Real World State and Notification Broker Michele Locuratolo In collaborazione con
  • 2. Agenda What is the State and Notification Broker Reading a System State Reacting to changes Application launcher
  • 3. What is the State and Notification Broker: Il a set of API which allow developers to: Monitoring the System State in managed code: We have more then 100 states exposed React on system state changes Create custom states
  • 4. Now we have: A consistent model to access and manage the system states No P/Invoke! 100% Managed code! A lot of states exposed (more then 100)
  • 6. Read the battery state DEMO
  • 7. Reacting to a changes Create an instance of the specific state Register to the .Changes event Implement your code 
  • 8. React to the battery state changes DEMO
  • 9. How we can use it (in a real world scenario)? We can: Disable buttons /menu when the battery strength is low Send data before battery goes down …
  • 10. ActiveSyncStatus PhoneCallForwardingOnLine1 CradlePresent MessagingMmsUnread MessagingOtherEmailUnread MessagingLastEmailAccountName MessagingTotalEmailUnread PhoneLastIncomingCallerName MediaPlayerTrackGenre MediaPlayerTrackTitle HeadsetPresent PhoneIncomingCallerNumber ConnectionsVpnDescriptions MessagingSmsUnread PhoneIncomingCallerName KeyboardPresent PhoneSimFull WiFiStateConnected MessagingVoiceMailTotalUnread OwnerName ConnectionsProxyCount PhoneCallOnHold PhoneActiveCallCount MediaPlayerTrackArtist WiFiStatePowerOn TasksActive PhoneMissedCall CalendarEventBusyStatus MessagingActiveSyncAccountName DisplayRotation PhoneCallCalling PhoneCallBarring PhoneActiveDataCall CameraPresent PhoneBlockedSim PhoneIncomingCallerContact PhoneGprsCoverage WiFiStateNetworksAvailable PhoneMissedCalls ConnectionsCount Phone1xRttCoverage TasksHighPriority PhoneIncomingCallerContactPropertyName
  • 11. Behind the scenes: The Windows Mobile Registry is the central repository: SystemState: for the predefined states RegistryState: for the custom state
  • 12. Creating your own state: Crate an instance of the RegistryState Class React to the changes like the classic SystemState
  • 13. Create your own state DEMO
  • 14. Application Launcher Start an application when a monitored state changes StateBase implements IApplicationLaucher interface The IApplicationLaucher has the capability to start an application Information about the application to start are stored in the Registry
  • 16. Remarks You can start directly when a state changes… SystemStatemonitoredState = newSystemState(SystemProperty.PowerBatteryBackupStrength); monitoredState.EnableApplicationLauncher("MyCoolApp"); …or when a state arrives to a specified value SystemStatemonitoredState = new SystemState(SystemProperty.PowerBatteryBackupStrength); monitoredState.ComparisonType = StatusComparisonType.Less; monitoredState.ComparisonValue = BatteryLevel.Low; monitoredState.EnableApplicationLauncher("MyCoolApp"); The second application is not running before the state value doesn’t match with the criteria
  • 17. In conclusion…. Windows Mobile exposes more then 100 different states When you need to interact with any kind of system notifications, check the System States You can create your own state Use the S&N API to produce a better software Check out this open source application which uses this APIs http://www.codeplex.com/MobilePhoneAssistant
  • 18. ActiveSyncStatus PhoneCallForwardingOnLine1 CradlePresent MessagingMmsUnread MessagingOtherEmailUnread MessagingLastEmailAccountName MessagingTotalEmailUnread PhoneLastIncomingCallerName MediaPlayerTrackGenre MediaPlayerTrackTitle HeadsetPresent PhoneIncomingCallerNumber ConnectionsVpnDescriptions MessagingSmsUnread PhoneIncomingCallerName KeyboardPresent PhoneSimFull WiFiStateConnected MessagingVoiceMailTotalUnread OwnerName ConnectionsProxyCount PhoneCallOnHold PhoneActiveCallCount MediaPlayerTrackArtist WiFiStatePowerOn TasksActive PhoneMissedCall CalendarEventBusyStatus MessagingActiveSyncAccountName DisplayRotation PhoneCallCalling PhoneCallBarring PhoneActiveDataCall CameraPresent PhoneBlockedSim PhoneIncomingCallerContact PhoneGprsCoverage WiFiStateNetworksAvailable PhoneMissedCalls ConnectionsCount Phone1xRttCoverage TasksHighPriority PhoneIncomingCallerContactPropertyName
  • 19. Link 17/01/2008 www.xedotnet.org 19 Michele Locuratolo http://www.michelelocuratolo.com michele@locuratolo.com http://www.michelelocuratolo.com Twitter.com/mighell

Notes de l'éditeur

  1. Chiedere quanti conoscono S&N e quanti lo hanno già usato
  2. In the past, system states non exposedasmanagedP/InvokesrequiredInconsistentAPIstoretrieve System States
  3. Marcare sulla congruenza del modello di accesso agli stati
  4. Battery: semplice lettura di uno stato
  5. Battery
  6. Dire alla fine:Remember…we have more than 100 states
  7. HKLMSystemState: general stateHKCUSystemState: user state (likeappointments)Mostrare il registro con Remote RegistryEditor
  8. Battery
  9. PersistentNotificationThe previuos (and verysimple) demo helps me to introduce the PersistentNotification.
  10. Battery
  11. Sulpunto 1, fare l’esempiodellechiamateentranti e che è possibileavviareil software solo se un determinatochiamantestàchiamando!