Which lines of code should you use for the production app?

###BeginCaseStudy###
Case Study: 3
E-reader app
Background
You are developing a Windows Store style e-reader app.
Business Requirements
• Users must be able to upload e-books and documents and download them to ereader devices.
• Users must be able to set a password to restrict access to their e-books and
documents.
• Users must be able to create and store encrypted metadata about their e-books
and documents.
• The app must replace system-generated error messages with custom-defined
messages. These custom messages must come from a list of approved text.
• User actions such as printing pages, saving users’ current locations in
documents, and taking notes should be enabled from buttons on an AppBar
control.

• The app must provide trial functionality that will expire after 14 days. If the
app expires while it is running, the app must display an expiration message to
the user and prompt the user to purchase the app.
Technical Requirements
General:
• Configuration files must be read-only. All user settings must be stored in the
Contoso Settings Service.
• The SocialPoller background task must run the code in the DoWork() method
to collect content from the Contoso feed.
• The UI must always remain responsive to user actions.
Security
• Secured e-book and document passwords must to be encrypted so that only the user
who created the passwords can retrieve the metadata associated to the e-books and
documents.
• The system must log all exceptions through the auditing object and notify technicians
of the issue.
Storage:
• The app must cache the next two chapters to the local device for users to read
while disconnected from the network. This cache must be persisted if a reboot
is performed.
• User state such as the current location in an e-book or document must be
stored in the Microsoft SQL Azure database.
• User settings such as font sizes and colors must be stored through the Contoso
Settings Service.
Network:
• Communication between the app and e-book vendors must occur over an
encrypted communication channel.
• Communication must use certificates to enable the SSL connection.
Trial Functionality:
• The isPrintEnabled variable must determine if the user can print.
• The isMarketEnabled variable must determine if the user can use the
marketplace.
• The isTrialEnabled variable must determine if the application is still in trial
mode.
Printing:
• The default printing options are portrait orientation and grayscale color mode.
• The app must enable the user to select the media size and printing orientation.
SocialPoller.es

Auditor.cs

ContentPage.es

Book.cs

Book.cs

SocialPost.es

Pagel.xaml.es

App.xaml.cs

###EndCaseStudy###

You need to deactivate features of the app when it runs as a trial.
Which lines of code should you use for the production app? (Each correct answer presents part of
the solution. Choose all that apply.)

###BeginCaseStudy###
Case Study: 3
E-reader app
Background
You are developing a Windows Store style e-reader app.
Business Requirements
• Users must be able to upload e-books and documents and download them to ereader devices.
• Users must be able to set a password to restrict access to their e-books and
documents.
• Users must be able to create and store encrypted metadata about their e-books
and documents.
• The app must replace system-generated error messages with custom-defined
messages. These custom messages must come from a list of approved text.
• User actions such as printing pages, saving users’ current locations in
documents, and taking notes should be enabled from buttons on an AppBar
control.

• The app must provide trial functionality that will expire after 14 days. If the
app expires while it is running, the app must display an expiration message to
the user and prompt the user to purchase the app.
Technical Requirements
General:
• Configuration files must be read-only. All user settings must be stored in the
Contoso Settings Service.
• The SocialPoller background task must run the code in the DoWork() method
to collect content from the Contoso feed.
• The UI must always remain responsive to user actions.
Security
• Secured e-book and document passwords must to be encrypted so that only the user
who created the passwords can retrieve the metadata associated to the e-books and
documents.
• The system must log all exceptions through the auditing object and notify technicians
of the issue.
Storage:
• The app must cache the next two chapters to the local device for users to read
while disconnected from the network. This cache must be persisted if a reboot
is performed.
• User state such as the current location in an e-book or document must be
stored in the Microsoft SQL Azure database.
• User settings such as font sizes and colors must be stored through the Contoso
Settings Service.
Network:
• Communication between the app and e-book vendors must occur over an
encrypted communication channel.
• Communication must use certificates to enable the SSL connection.
Trial Functionality:
• The isPrintEnabled variable must determine if the user can print.
• The isMarketEnabled variable must determine if the user can use the
marketplace.
• The isTrialEnabled variable must determine if the application is still in trial
mode.
Printing:
• The default printing options are portrait orientation and grayscale color mode.
• The app must enable the user to select the media size and printing orientation.
SocialPoller.es

Auditor.cs

ContentPage.es

Book.cs

Book.cs

SocialPost.es

Pagel.xaml.es

App.xaml.cs

###EndCaseStudy###

You need to deactivate features of the app when it runs as a trial.
Which lines of code should you use for the production app? (Each correct answer presents part of
the solution. Choose all that apply.)

A.
licenseInforination.LicenseChanged += new LicenseChangedEventHandler (modifyLicense)

B.
license.LicenseChanged += new LicenseChangedEventHandler(implementLicense)

C.
licenseInformation = CurrentApp.GetCurrentLicense()

D.
licenseInformation = CurrentApp.LicenseInformation

E.
license = CurrentApp.GetCurrentLicense()

F.
licenselnformation.LicenseChanged += new LicenseChangedEventHandler (implementLicense)

Explanation:
B: // Register for the license state change event.
licenseInformation.addEventListener(“licensechanged”, reloadLicense);
D: Initialize the CurrentApp or CurrentAppSimulator to access the app’s license info.
Example:
// Get the license info
licenseInformation = currentApp.licenseInformation;
* From scenario:
/ The app must provide trial functionality that will expire after 14 days. If the app expires while it is
running, the app must display an expiration message to the user and prompt the user to purchase
the app.
http://msdn.microsoft.com/enus/library/windows/apps/windows.applicationmodel.store.currentapp.licenseinformation.aspx

http://msdn.microsoft.com/enus/library/windows/apps/windows.applicationmodel.store.licensechangedeventhandler.aspx



Leave a Reply 1

Your email address will not be published. Required fields are marked *