The errata list is a list of errors and their corrections that were found after the product was released. If the error was corrected in a later version or reprint the date of the correction will be displayed in the column titled "Date Corrected".
The following errata were submitted by our customers and approved as valid errors by the author or editor.
Version |
Location |
Description |
Submitted By |
Date submitted |
Date corrected |
PDF |
Page 22
A Formatting Note, 1st paragraph, 3rd line |
The word 'that' is doubled
At times these fully qualified names?those that that
include the entire namespace
|
Gumaro Melendez |
Feb 19, 2013 |
|
PDF |
Page 22
4th <p> |
"then" should be "them"
At times these fully qualified names?those that that include the entire namespace?can become quite long, so it?s necessary to occasionally hyphenate THEN across line breaks, as in Windows.Security.Cryptography.CryptographicBuffer.convertString- ToBinary.
|
RonAdam |
Jun 27, 2013 |
|
PDF |
Page 30
2nd paragraph |
Using CurrentProduct, when the implied reference is CurrentApp
This is entirely identical to
CurrentProduct except that it works against local data in an XML file rather than live Store data in
the cloud.
Note from the Author or Editor: Yes, it should be CurrentApp. It was CurrentProject for a long time, then the API changed and clearly we missed this one.
|
Gumaro Melendez |
Feb 19, 2013 |
|
PDF |
Page 55
d paragraph |
Hello there,
This is the description of the minor technical error in th following text:
================ text begin ===================
In the project root folder:
? default.html The starting page for the app.
? <Appname>_TemporaryKey.pfx A temporary signature created on first run.
? package.appmanifest
================ text end ===================
the last line there is the letter "x" is missing between the words "app" and "manifest" it is written "package.appmanifest" but it should be "package.appxmanifest".
I hope I was able to be of some help.
If you have any question, please feel free to contact me at mnajar@live.com.
I wish a very please and successful year 2013.
With my regards,
Michael Najar
|
Michael Najar |
Jan 21, 2013 |
|
PDF |
Page 57
paragraph before the last, starting with "when an app" |
Hello,
Sub: A minor letter is missed during hyphenation,
Quoted Text in PDF:
"For the launch kind, another bit of information from the Windows.ApplicationMode.- Activation.ApplicationExecutionState enumeration tells the app how it was last running."
Errata Correction:
Printed as Windows.ApplicationMode instead of Windows.ApplicationModel
i.e (I first though as if there is something ApplicationMode instead of ApplicationModel)
Note from the Author or Editor: It should be ApplicationModel
|
Prakash Kumar |
Mar 12, 2013 |
|
PDF |
Page 65
6th paragraph |
Hello There,
First, I like to say it is a pleasure to read your book "Programming Windows 8 Apps with HTML, CSS, and JavaScript".
Here I believe there are 3 minor errors on page 65:
1. In the following paragraph:
"Right-click the element you want to style in the Live DOM, and select Create Style Rule From Element Id or Create Style Rule From Element Class."
It should be "Right-click the element you want to style in the Live DOM, and select Add Style Rule from the popup windows or click on the '+' to the right of the element to add a new rule".
2. From the image it is not clear what element is selected and it is not mentioned where to set the insertaion point as described in the paragraph "Set the insertion point of the style rule with the orange-yellow line control within Blend?s Style Rules tab. This determines exactly where any new rule you create will be created:"
3. Last paragraph on the same page: "Repeat with every other element." Since I am new to all this, it is not understandable if all the elements means: "body", "fullscreen-landscape", "filled", "snapped", "portrait" or excluding the "body"!
I hope I was able to be of help, if you need more info0rmation please feel free to contact me.
I wish a very pleasent and successful week.
with my regards,
Michael Najar
mnajar@live.com
Note from the Author or Editor: Thanks for the suggestions.
For #1, what I wrote is accurate for right-clicking an element in the Live DOM area of Blend (typically the pane on the lower left); you correctly describe the options when you right click in the Style Rules tab, which is what's shown in the image and hence the confusion. I can certainly clarify that in the next edition. In that bullet, it could say, "In the Live DOM pane (the lower left side in Blend), right click the element you want to style..."
For #2, I can see that this could be clarified as well.
For #3, it means repeat with every other element you want to style, which could include body, html, etc. Elements are those in the Live DOM; the view states are not elements, but media queries, and you find those in the Style Rules section. But again, this could stand to be clarified, so I thank you for making the suggestions.
|
Michael Najar |
Jan 22, 2013 |
|
PDF |
Page 76
Last two lines |
Hello there,
It is unclear where to place the last two line of page 76 within the code, I figured it out, but I think another line should be added before the last two lines, such as:
/Place this under args.setPromise(WinJS.UI.processAll());
Feel free to contact me for additional info.
I hope I was able to be of some help and I wish you a great week, and keep up the good work.
Regards
Michael Najar
mnajar@live.com
Note from the Author or Editor: It actually doesn't matter where this is placed in the onactivated event handler, and you can always refer to the completed sample in the companion content for the answer.
The reason it doesn't matter is that this code only refers to elements that are directly declared in the HTML, and if you're in the activated handler then you can be assured that the DOM is in memory. If this code was setting listeners on WinJS controls, on the other hand, which are not created until WinJS.UI.processAll is complete, then it would be necessary to place the code inside the completed handler for that async call.
|
Michael Najar |
Jan 23, 2013 |
|
PDF |
Page 81
code block for function notifyParent |
function is written twice.
Should read
function notifyParent(event, args) {
|
Carlos Muniz |
Jul 31, 2013 |
|
PDF |
Page 168
figure 4-10 |
The arrow from source.userType to span.style.color is broken.
Note from the Author or Editor: The image on this page of the PDF is truncated, so the line connecting the Converter arrow to the <span> is incomplete.
|
RonAdam |
Mar 26, 2013 |
|
PDF |
Page 171
4th paragraph |
In: "(or initializer as it is more property called)" it should be "properly" instead of "property".
|
RonAdam |
Mar 26, 2013 |
|
PDF |
Page 171
4th paragraph |
In: "(or initializer as it is more property called)" it should be "properly" instead of "property".
|
RonAdam |
Mar 26, 2013 |
|
PDF |
Page 184
2nd <p> |
the template is defined in scenario1.html not default.html
The control?s item template is defined earlier in default.html with the id of smallListIconTextTemplate and is essentially the same sort of thing we saw with the FlipView (an img and some text elements), so I won?t list it here.
Note from the Author or Editor: Good catch!
|
RonAdam |
Jun 29, 2013 |
|
PDF |
Page 185
1st <p> |
"and" should be "an"
This behavior will select or deselect and item, depending on its state, and then invoke it.
|
RonAdam |
Jun 29, 2013 |
|
PDF |
Page 186
Second line under first heading |
The word "apparently" should be "apparent".
|
Kraig Brockschmidt |
Jan 15, 2013 |
|
PDF |
Page 188
First line inside the "tip" |
The word "required" should be "requires"
|
Kraig Brockschmidt |
Jan 15, 2013 |
|
PDF |
Page 188
3rd <p> |
"one" should go
For this reason the creation of CharacterGroupings is done one outside of the function.
|
RonAdam |
Jun 29, 2013 |
|
PDF |
Page 193
1st <p> |
"above" should be "below"
You can also see how this page assigns a handler to the itemInvoked events (above ready), calling WinJS.Navigation.navigate to go to the groupDetail or itemDetail pages as we saw in Chapter 3:
|
RonAdam |
Jun 29, 2013 |
|
PDF |
Page 196
last <p> |
"copanion" should be "companion"
Here?s how the sample does it with two ListView controls (plus the template used for the zoomed-out view; I?m showing the code in the modified sample included with this chapter?s copanion content):
|
RonAdam |
Jun 29, 2013 |
|
PDF |
Page 197
last sentence |
"stylealso" should be 2 words
The win-semanticzoombutton stylealso lets you style the zoom control button if needed.
|
RonAdam |
Jun 29, 2013 |
|
PDF |
Page 201
right picture at the top of the page |
win-top should be win-navtop
Note from the Author or Editor: Yes, thanks for the correction.
|
RonAdam |
May 03, 2013 |
|
PDF |
Page 213
4th bullet |
2 times "already"
We?ve already seen the groupDataSource, groupHeaderTemplate, itemDataSource, and itemTemplate properties already.
|
RonAdam |
Jun 30, 2013 |
|
PDF |
Page 216
2nd bullet |
"them" should be removed, or maybe it should be "then"
If you want to override styles for a ListView, be sure to scope your selectors them with other classes like .win-listview or a particular control?s id or class.
Note from the Author or Editor: Omit "them"
|
RonAdam |
Jun 30, 2013 |
|
PDF |
Page 233
2nd paragraph |
"primarily" should be "primary" in
...how people in the home might move between primarily spaces...
|
RonAdam |
Jun 09, 2013 |
|
PDF |
Page 238
3rd paragraph. 1st sentence |
"riles" should be "rules" in
...add a few style riles.
|
RonAdam |
Jun 09, 2013 |
|
PDF |
Page 243
2nd paragraph, 2nd sentence |
"this" should go
...handling view states for every page this does not mean...
|
RonAdam |
Jun 09, 2013 |
|
PDF |
Page 247
1st code snippet, comments |
all 3 view states seem wrong. shouldn't they be:
fullscreen-landscape
filled
fullscreen-portrait
Note from the Author or Editor: Yes, you are correct--those comments reflect the earlier names for the view states that later changed.
|
RonAdam |
Jun 09, 2013 |
|
PDF |
Page 256
sidebar |
"use" or "load", not both
Alternately, you can use load different graphics (through different img.src URIs) that are better suited for the most common screen size.
Note from the Author or Editor: Should be just "load"
|
RonAdam |
Jun 10, 2013 |
|
PDF |
Page 263
Second paragraph under "CSS 2D and 3D Transforms" |
The link to http://www.w3.org/TR/css3-3d-transforms/ is erroneously broken across a line which has introduced a space between http:// and the rest of the URI, so clicking the link won't go to a valid page. The proper URI is http:// www.w3.org/TR/css3-3d-transforms/.
|
Kraig Brockschmidt |
Nov 28, 2012 |
|
PDF |
Page 304
in the note |
"his" should be "this" in
Be aware of his if you?re using the completed handler to process such commands.
|
RonAdam |
Jun 07, 2013 |
|
PDF |
Page 313
1st paragraph |
"is" should be added
I think this exactly why many people enjoy traveling in a motor home!
|
RonAdam |
Jun 10, 2013 |
|
PDF |
Page 316
1st paragraph |
"look" should be deleted
In fact, if you look open this file for the Sports app, as is shown in the figure, you?ll see a value like {"lastSuspendTime":1340057531501}.
Note from the Author or Editor: Change to "If you look at this file"
|
RonAdam |
Jun 10, 2013 |
|
PDF |
Page 321
3rd paragraph & 3rd bullet & 4th bullet |
"to" should be inserted
First, however, other APIs like URL.createObjectURL?working with what are known as blobs?make it possible to do many things in an app without having TO descend to the level of file I/O at all!
"an" should be inserted
This is also the only means through which AN app can access safe (nonsystem) areas of the file system without additional declarations in the manifest.
"with" should be "will"
(Attempting to obtain a folder without the correct capability with throw an Access Denied exception.)
|
RonAdam |
Jun 10, 2013 |
|
PDF |
Page 322
1st paragraph |
"of" should be inserted
With the latter, the API provides for obtaining a list OF folder contents, ...
|
RonAdam |
Jun 10, 2013 |
|
PDF |
Page 327
5th paragraph |
apostrophe should be inserted
If you need to store additional values within sessionState before IT`S written, do that in your handler for WinJS.Application.oncheckpoint.
|
RonAdam |
Jun 10, 2013 |
|
PDF |
Page 331
2nd paragraph |
insert "and" ?
So long as their combined size is less than Windows.Storage.- ApplicationData.current.roamingStorageQuota, Windows will copy that data to other devices where the same user is logged in AND has the same app installed; in fact, when an app is installed, Windows attempts to copy roaming data so that it?s there when the app is first launched.
|
RonAdam |
Jun 11, 2013 |
|
PDF |
Page 334
1st paragraph |
added "s"
This is done through the settings pane object returned from Windows.UI.ApplicationSettings.SettingPane.getForCurrentView, whose show method displayS the UI (or throws a kindly exception if the app is in snapped view or doesn?t have the focus, so don?t invoke it under those conditions!).
|
RonAdam |
Jun 11, 2013 |
|
PDF |
Page 342
1st paragraph |
added "a"
For example, if you encounter an error condition in the app that could be rectified by changing an app setting, you can provide a button in
the message dialog of A notification flyout that calls showSettings to open that particular pane.
Note from the Author or Editor: The "of" should actually be "or" in this case, "you can provide a button in a message dialog or notification flyout."
|
RonAdam |
Jun 12, 2013 |
|
PDF |
Page 345
2nd paragraph |
"can" should be deleted
For example, the Windows 8 Camera app is a file picker provider that lets you can activate your camera, take a picture, and have it
returned as if you loaded it from the file system.
|
RonAdam |
Jun 12, 2013 |
|
PDF |
Page 352
2nd paragraph |
added "and"
Now that we?ve seen AND understood the capabilities of the file picker, we can turn our attention to the other libraries.
Note from the Author or Editor: Can insert "and" or just omit "seen"
|
RonAdam |
Jun 12, 2013 |
|
PDF |
Page 353
last but one paragraph |
"tile" instead of "file"
This way you don?t need to associate your app with specific tile types, which also says that your app is available to service such files at any time.
|
RonAdam |
Jun 12, 2013 |
|
PDF |
Page 356
last paragraph |
"tests" should be "test"
A similar method, StorageFolder.areQueryOptionsSupported, also exists to tests support for custom queries beyond the common ones.
|
RonAdam |
Jun 12, 2013 |
|
PDF |
Page 363
3rd <p> |
"though" should be "through"
Similarly, designing for touch means thinking though how gestures might enrich the user experience?and also how to provide for discoverability and user feedback that has generally relied on mouse-only events like hover.
|
RonAdam |
Jun 15, 2013 |
|
PDF |
Page 364
3rd <p> |
"how its positioned" should be "how it's positioned"
Sensors tell an app what?s happening to the device in its relationship to the physical world: how its positioned in space (relative to a number of reference points), how it?s moving through space, how it?s being held relative to its ?normal? orientation, and even how much light is shining on it.
|
RonAdam |
Jun 15, 2013 |
|
PDF |
Page 369
last sentence |
"on" should be "or"
In most cases it?s probably simpler to add an appbar command on a button on your app canvas to achieve the same goal.
|
RonAdam |
Jun 15, 2013 |
|
PDF |
Page 371
1st bullet |
"it's" should be "its"
none disables direct selection, though the element as a whole can be selected if it?s parent is selectable.
|
RonAdam |
Jun 15, 2013 |
|
PDF |
Page 377
"button" row |
"bitwise" and "the" should be swapped
The left is 0, middle is 1, and right is 2; these values can be combined with bitwise the OR operator for chord presses (multiple buttons).
|
RonAdam |
Jun 15, 2013 |
|
PDF |
Page 382
3rd <p> |
2nd "in" should be deleted
In this case, an MSInertiaStart event gets fired in to indicate that the pointer effectively continues to move even though contact was released or lifted.
|
RonAdam |
Jun 15, 2013 |
|
PDF |
Page 387
3rd <p> |
"manipuationStarted" should be "manipulationStarted"
"to" should be "so"
For all others it will fire a series of manipuationStarted, manipulationUpdated, manipulationInertiaStarting, and manipulationCompleted events. Note that all of these come from WinRT to be sure to call removeEventListener as needed.
|
RonAdam |
Jun 16, 2013 |
|
PDF |
Page 388
2nd <p> |
"Gesture" should be "Gestures"
At the same time, now is a good opportunity to re-read ?Sidebar: Creating Completely New Gesture?? at the end of the earlier section on the touch language.
|
RonAdam |
Jun 16, 2013 |
|
PDF |
Page 394
caption |
"customHanding" should be "customHandling"
Tapping the gray customHanding element on the right shows custom handling for the keyboard?s appearance.
|
RonAdam |
Jun 16, 2013 |
|
PDF |
Page 395
table "Forward" row |
closing parenthesis missing
Forward (navigation
|
RonAdam |
Jun 16, 2013 |
|
PDF |
Page 399
4th <p> |
"and other" should be "another"
In any case, when the Geolocator takes and other reading and finds that the device has moved beyond the movement-Threshold, it will fire a positionChanged event, where the eventArgs.position property is a new Geoposition object.
|
RonAdam |
Jun 16, 2013 |
|
PDF |
Page 400
1st sentence |
"movementThreadhold" should be "movementThreshold"
With movementThreadhold and reportInterval, really think through what your app needs based on the accuracy and/or refresh intervals of the data you?re using in relation to the location.
|
RonAdam |
Jun 16, 2013 |
|
PDF |
Page 404
3rd bullet |
"maniplations" should be "manipulations"
A tap is typically handled with a click event, whereas the others require the creation of an MSGesture object, association of that object with a pointer, and handling of MSGesture* event sequences which provide for maniplations and inertial motions together.
|
RonAdam |
Jun 17, 2013 |
|
PDF |
Page 408
1st bullet at the bottom |
added "is"
The PNG format IS generally preferred over other formats, especially for text and line art, though JPEG makes smaller files for photographs.
|
RonAdam |
Jun 14, 2013 |
|
PDF |
Page 410
2nd <p> |
"gets" or "is" (rotated) should be deleted
When the styles are applied, the img element gets is rotated and transformed, the canvas gets scaled, and individual parts of the svg are styled with new colors, as shown in Figure 10-2.
Note from the Author or Editor: remove "gets"
|
RonAdam |
Jun 14, 2013 |
|
PDF |
Page 416
2nd <p> |
last word should be "performance"
Again, this is processor-intensive as it?s not generally a GPU-accelerated process and might perform poorly on lower-power devices (be sure, however, to run a Release build outside the debugger when evaluating erformance).
|
RonAdam |
Jun 14, 2013 |
|
PDF |
Page 417
note |
added "in"
When you do this, Windows will automatically detect this full-screen video state and do some performance optimizations, but not if any other element is IN front of the video.
|
RonAdam |
Jun 14, 2013 |
|
PDF |
Page 419
table |
msIsStereo3D row:
"it" should be "is"
Whether the system it itself capable can be determined through ...
msAudioDeviceType row:
"specifies" seems more logical
Specified the output devices that audio will be sent to; see ?Audio Element Extension APIs.?
|
RonAdam |
Jun 14, 2013 |
|
PDF |
Page 420
2nd <p> |
"Encovers" should be "Encoders"
This is important when you need to provide a custom codec for your app through Windows.Media.MediaExtensionManager, outlined in the ?Custom Decoders/Encovers and Scheme Handlers? section later in this chapter, as the codec identifies the extension to load for decoding.
|
RonAdam |
Jun 14, 2013 |
|
PDF |
Page 424
last sentence |
"takes" should be "take"
Similarly, users will expect that an audio stream of a foreground app will takes precedence over a stream of the same category of audio playing ...
|
RonAdam |
Jun 14, 2013 |
|
PDF |
Page 425
2nd <p> |
"settings" should be "setting"
Setting an audio category for any given audio element is a simple matter of settings its msAudio-Category attribute.
|
RonAdam |
Jun 14, 2013 |
|
PDF |
Page 425
last sentence |
"you'll" should be "it'll" ? seems funny like this
The start page isn?t really essential for background audio (because you?ll never be launched for this purpose), but you need to provide something to make the manifest editor happy.
|
RonAdam |
Jun 14, 2013 |
|
PDF |
Page 428
1st <p> |
inserted comman (after screen)
This is especially important because background audio continues to play not only when the user switches to another app, but also when they switch to the Start screen, switch to the desktop, or lock the device.
|
RonAdam |
Jun 15, 2013 |
|
PDF |
Page 430
last sentence |
"you" and "want" should we swapped
But if want you a truly seamless transition, you?ll...
|
RonAdam |
Jun 15, 2013 |
|
PDF |
Page 435
1st <p> |
should be one sentence
What you receive in your completed handler is a StorageItemThumbnail object that provides thumbnail data as a stream . You can conveniently pass to our old friend URL.createObjectURL for display in an img element and whatnot.
Note from the Author or Editor: Should be "data as a stream, which you can ..."
|
RonAdam |
Jun 15, 2013 |
|
PDF |
Page 441
4th <p> |
"butting" should be "button"
As the fields shown earlier in Figure 10-5 are editable, the sample provides an Apply butting that invokes the applyHandler function below to write them back to the file:
Note from the Author or Editor: Egads. This one is embarrassing! :)
|
RonAdam |
Jun 15, 2013 |
|
PDF |
Page 442
3rd bullet |
"Helpers.convertStartsToSystemRating" should be "Helpers.convertStarsToSystemRating"
The Helpers.convertStartsToSystemRating method (see js/default.js) converts between 1?5 stars, as used in the WinJS.UI.Rating control, to the System.Rating value that uses a 1?99 range. The documentation for System.Rating specifically indicates this mapping.
|
RonAdam |
Jun 15, 2013 |
|
PDF |
Page 447
last <p> |
"options" should be "option"
To provide these properties, you need to create a new BitmapPropertySet and insert an entry in that set for each desired options.
|
RonAdam |
Jun 15, 2013 |
|
PDF |
Page 451
3rd <p> |
"through" should be "though"
Through not shown in the sample, you can apply effects to a transcoding operation by using the transcoder?s addAudioEffect and addVideoEffect methods.
|
RonAdam |
Jun 15, 2013 |
|
PDF |
Page 454
1st row of table |
"unless note" should be "unless noted otherwise" ?
(classes are in the Windows.Media.Capture namespace unless note)
|
RonAdam |
Jun 15, 2013 |
|
PDF |
Page 455
1st <p> |
"an" should be "and"
When you tap the Start Preview button, it creates an initializes a MediaCapture object as follows:
|
RonAdam |
Jun 15, 2013 |
|
PDF |
Page 460
1st paragraph |
seems like "for" should be deleted
As mentioned in this chapter?s introduction, Netflix alone consumes for a large percentage of today?s Internet bandwidth (including that of my own home).
Note from the Author or Editor: Remove "for"
|
RonAdam |
Jun 15, 2013 |
|
PDF |
Page 462
2nd <p> |
blank line should be deleted
Plus, with the SDK you don?t need to submit your app for
DRM Conformance testing.
Note from the Author or Editor: Yep, this is an artifact of pagination work that went unnoticed.
|
RonAdam |
Jun 15, 2013 |
|
PDF |
Page 464
3rd <p> |
"primarily" should be "primary"
You can even run the app from your primarily machine using the remote debugging tools of Visual Studio, allowing you to step through the code of both source and receiver apps at the same time!
|
RonAdam |
Jun 15, 2013 |
|
PDF |
Page 473
table "Add/Delete from List" row |
first "of" should be "or"
Animates the insertion of deletion of items from a list, as used by the ListView control.
|
RonAdam |
Jun 17, 2013 |
|
PDF |
Page 476
1st <p> |
"that" should be deleted
Each offset is an object whose properties that define the offset.
|
RonAdam |
Jun 17, 2013 |
|
PDF |
Page 485
2nd <p> |
"are" (the same time) should be "at"
With animations, there are three events: animationstart (which comes after any delay has passed), animationend (when the animation finished), and animationiteration (at the end of each iteration, unless animationend also fires are the same time).
|
RonAdam |
Jun 17, 2013 |
|
PDF |
Page 485
3rd <p> |
"an" (timer) should be "a"
If you?re anything like me, I imagine that one of the first things you did when you started playing with JavaScript is to do some kind of animation: set up some initial conditions, create an timer with setInterval, do some calculations in the handler and update elements (or draw on a canvas), and keep looping until you?re done.
|
RonAdam |
Jun 17, 2013 |
|
PDF |
Page 529
Last paragraph on page |
The URI within the link on WebUIProtocolActivatedEventArgs has two URIs in it so it's an invalid link.
The correct URI is http://msdn.microsoft.com/library/windows/apps/windows.ui.webui.webuiprotocolactivatedeventargs.aspx
|
Kraig Brockschmidt |
Nov 28, 2012 |
|
PDF |
Page 553
In "Contact Picker Providers" section, first paragraph under code snippet |
The link for ContactPickerUI has extra text in the URI, making it an invalid link. The correct URI is http://msdn.microsoft.com/library/windows/apps/windows.applicationmodel.contacts.provider.contactpickerui.aspx .
|
Kraig Brockschmidt |
Nov 28, 2012 |
|
PDF |
Page 569
last sentence |
2 typos in last sentence, it should read (I think):
A raw notification must be received by a running app or by a lock screen app with a background task with the push notification trigger - otherwise the system clearly won't know what to do with it!
Note from the Author or Editor: Good catch--little words there!
|
RonAdam |
Jun 05, 2013 |
|
PDF |
Page 572
2nd bullet+5th bullet |
2nd bullet: "file" instead of "tile":
SecondaryTile(tileId) Initializes the SecondaryTile with a specific ID, typically used when creating an object before an update or when unpinning the file.
5th bullet: "file" instead of "tile":
This value is typically derived from the content related to the file.
|
RonAdam |
Jun 05, 2013 |
|
PDF |
Page 573
2nd <p> |
"udpateAsync " should be "updateAsync"
If you modify any properties for a SecondaryTile that has already been pinned, be sure to call its udpateAsync method to propagate those changes.
|
RonAdam |
Jun 23, 2013 |
|
PDF |
Page 576
1st <p> |
"keep" should be "keeping"
If you?ve been keep score throughout this section, you might have noticed that I?ve yet to mention Scenario 6 of the sample.
|
RonAdam |
Jun 23, 2013 |
|
PDF |
Page 581
1st full sentence |
"be you" should be "you be"
The exact tile schema, should be you interested, can be found on the Tile schema reference page.
|
RonAdam |
Jun 23, 2013 |
|
PDF |
Page 581
3rd <p> |
2nd "in" should be "is"
(Looking for tiny errors in strings in not my favorite pastime!)
|
RonAdam |
Jun 23, 2013 |
|
PDF |
Page 587
1st sentence |
"the" should be deleted
In such cases it would be better to have the tile cycle through a series of tiles, thereby keeping the tile active with THE more than just the last update.
|
RonAdam |
Jun 23, 2013 |
|
PDF |
Page 592
last <p> |
"tile" should be deleted
There?s a very basic service that delivers badge updates. You can use this in Scenario 5 of the Push and periodic notifications client-side sample?enter your page?s URI in the box, press the button to start polling, and then check the sample?s tile on the Start screen TILE.
|
RonAdam |
Jun 23, 2013 |
|
PDF |
Page 594
4th bullet |
"to" should be deleted
If you use the Start screen?s app bar command to make the tile smaller, thereby using the square tile payload in the XML, you should see it switch between TO another gratuitous picture of my kid and peek text:
Note from the Author or Editor: Omit "between" instead
|
RonAdam |
Jun 23, 2013 |
|
PDF |
Page 596
last <p> |
"provide" should be "provides"
The Windows Azure site also provide direct support and SDKs for .NET, node.js, PHP, Java, and Python, along with Visual Studio Express 2012 with Web for Windows Azure SDK?all available again
|
RonAdam |
Jun 23, 2013 |
|
PDF |
Page 603
1st <p> |
"a" should be removed
The particular sound is set with the src attribute and must be A one of the following string values as described in the Toast audio options catalog:
|
RonAdam |
Jun 23, 2013 |
|
PDF |
Page 609
2nd <p> |
"a" should be deleted, or "URIs" should be "URI"
In this case you?ll be managing a separate channel URIs for each tile.
Note from the Author or Editor: Omit "a"
|
RonAdam |
Jun 23, 2013 |
|
PDF |
Page 610
last <p> |
"to" should be deleted
Before a service can send updates, it must to authenticate itself with WNS by sending the Package Security Identifier (SID) and client secret as obtained through the Windows Store Dashboard.
|
RonAdam |
Jun 23, 2013 |
|
PDF |
Page 612
2nd <p> |
"to" should be "a"
A 404 or 410 error is different, by the way, from an inability to deliver to notification because the client is offline.
|
RonAdam |
Jun 23, 2013 |
|
PDF |
Page 615
6th <p> |
"complete" should be "compete"
This means it isn?t having to complete with background apps that would, if allowed, take up as many resources as they possibly can.
|
RonAdam |
Jun 23, 2013 |
|
PDF |
Page 615
last sentence |
"services" should be "service"
It?s likely that you?ve experienced situations like this directly, where you?ve started an app but it takes for-EV-er to start up because some other dark and mysterious services is chewing on the hard drive,
|
RonAdam |
Jun 23, 2013 |
|
PDF |
Page 617
1st <p> |
"an" should be deleted
Given the quotas on CPU time, writing a background task in a language like C++ or C# will allow you to do some tasks more efficiently, in which case you?ll use the Entry Point field (if the task is in a DLL in the package) and perhaps the Executable field (if the task is AN another EXE in the package) to identify the code module and specific function to call.
Note from the Author or Editor: Actually the AN should be "in"
|
RonAdam |
Jun 23, 2013 |
|
PDF |
Page 643
2nd paragraph under header Background transfer |
"reliving" should be "relieving":
It offers built-in cost awareness and resiliency to changes in connectivity, reliving apps from needing to worry about such concerns themselves.
Note from the Author or Editor: Confirmed. Thank you.
|
RonAdam |
Jun 06, 2013 |
|
PDF |
Page 652
1st sentence |
2nd "BackgroundDownloader" should be "BackgroundUploader"
Within the BackgroundDownloader and BackgroundDownloader you have the ability to set values for individual HTTP headers by using their setRequestHeader methods.
|
RonAdam |
Jun 26, 2013 |
|
PDF |
Page 756
last but one paragraph |
I think business is not a verb
Put another way, whatever small fee you pay to upload apps to the Store has made it possible for you to DO business in those markets with little or no effort!
|
RonAdam |
Jun 12, 2013 |
|
PDF |
Page 761
last paragraph |
"at" should be deleted
In this section, we?ll explore at these different models and better understand how they relate to one another.
Note from the Author or Editor: "at" should be "all"
|
RonAdam |
Jun 12, 2013 |
|
PDF |
Page 765
last paragraph |
"primarily" should be "primary" in
One of the primarily motivations behind the Store (and the associated packaging technology) is to eliminate nearly all of the past risk of software acquisition: unknown or untrusted sources, potential malware, inconsistent install/uninstall procedures, and so forth.
|
RonAdam |
Jun 12, 2013 |
|
PDF |
Page 766
3rd paragraph |
"they're" should be "they've"
In-app purchases cannot also be interdependent?that is, users cannot be required to purchase other options to use one they?re already bought.
|
RonAdam |
Jun 12, 2013 |
|
PDF |
Page 767
3rd paragraph |
"kicked" should be "kick"
And if you?re found to be truly abusive, Microsoft does reserve the right to kicked your app out of the Store altogether, if it even passes certification at the outset.
|
RonAdam |
Jun 12, 2013 |
|
PDF |
Page 769
last paragraph |
"transation" should be "transactions"
...(a BCP-47 string indicating the user?s market that is used for transation)...
|
RonAdam |
Jun 12, 2013 |
|
PDF |
Page 774
last sentence |
"trailModeRefreshScenario" should be "trialModeRefreshScenario"
You can also try setting ExpirationDate about a minute in the future, set a breakpoint on the trailModeRefreshScenario function inside js/trial-mode.js, then run the sample again.
|
RonAdam |
Jun 13, 2013 |
|
PDF |
Page 780
3rd paragraph |
seems like "dates" should be "date", because "the purchase" is singular
In all cases, the receipt is an XML string that contains information such as the app or product id, the dates when the purchase was made and when the receipt was issued, and a digital signature.
Note from the Author or Editor: It's plural because it refers to two dates, (a) purchase and (b) receipt issue. Could work either way. Perhaps better saying "the dates for both when the purchase was made and when the receipt was issued."
|
RonAdam |
Jun 13, 2013 |
|
PDF |
Page 787
last paragraph |
"mutliline" should be "multiline"
The aria-multiline attribute indicates that the chat window is a mutliline textbox such that the Enter key is taken as text input rather than as a button press that would submit a form (as with the single-line textbox).
|
RonAdam |
Jun 13, 2013 |
|
PDF |
Page 788
1st paragraph |
"of" should be deleted, or maybe it should be "a line of text"
When you enter a line of in the single line control, on the other hand, Narrator only reads the new element that?s been added.
|
RonAdam |
Jun 13, 2013 |
|
PDF |
Page 788
last sentence |
"HTML essential controls sample" mentioned twice
To see what happens, run a few of the controls samples, such as the HTML essential controls sample and HTML essential controls sample and the HTML Rating ...
|
RonAdam |
Jun 13, 2013 |
|
PDF |
Page 789
3rd paragraph |
parenthesis should be deleted, there's no opening one
This has two properties: highContrast, a Boolean indicating if high contrast is on), and highContrastTheme, a string with the name of the high contrast color scheme.
|
RonAdam |
Jun 13, 2013 |
|
PDF |
Page 793
4th paragraph |
"names" should be "named"
To see this, make a copy of button.contrast-high.svg and name it button.contrast-white.svg, and then make a second copy names button.contrast-black.svg.
|
RonAdam |
Jun 13, 2013 |
|
PDF |
Page 795
3rd paragraph |
"work" should be "works"
In the manifest, naming images with resource qualifiers work for both scale and contrast, as well as language as we?ll see later.
|
RonAdam |
Jun 13, 2013 |
|
PDF |
Page 801
3rd paragraph |
"these" should be deleted
In Windows.Globalization.NumberFormatting we have CurrencyFormatter, DecimalFormatter, PercentFormatter, and PermilleFormatter, which you should always use these when converting data values into UI display strings.
|
RonAdam |
Jun 13, 2013 |
|
PDF |
Page 801
3rd paragraph |
"ahd" should probably be "and"
All of these classes are demonstrated in the Number formatting and parsing sample, where the basic process is to instantiate the formatter with or without specific codes or languages, set any necessary properties for the formatter (such as the number of digits and using separators), ahd then call its format method to obtain a string or, alternately, one of its parse* methods to turn a string into a number.
|
RonAdam |
Jun 13, 2013 |
|
PDF |
Page 803
3rd paragraph |
added "to"
Thanks to Unicode and the ability of HTML TO directly handle text in different languages, there?s little you need to do to make such text appear properly within your layout.
|
RonAdam |
Jun 13, 2013 |
|
PDF |
Page 804
last paragraph |
stray angle bracket
So by using HTML, CSS< and WinJS?including built-in controls?much of the mirroring is taken care of automatically; Here My Am!, for instance, just works in Hebrew.
Note from the Author or Editor: Didn't quite get the Shift key down here, apparently :)
|
RonAdam |
Jun 13, 2013 |
|
PDF |
Page 805
1st paragraph |
"by" should be replaced by "but"
If, however, you have images that really need to be replaced (as when some parts would be mirrored by other parts would not), you can use layoutdir-RTL in the image filename in the same way we?ve seen for pixel densities and contrast.
|
RonAdam |
Jun 13, 2013 |
|
PDF |
Page 805
note |
"languages" should probably be added
The resource loader supports sparse localization for dealing with slight variations between similar.
Note from the Author or Editor: Yes, add "languages"
|
RonAdam |
Jun 13, 2013 |
|
PDF |
Page 806
4th <p> |
"of" should be deleted
Any entry of that begins with an underscore, such as the conventional <_identifier.comment> : <value> is ignored by the resource loader.
|
RonAdam |
Jun 13, 2013 |
|
PDF |
Page 808
last <p> |
"without string the app" ? don't know if this is a typo or I just don't know the meaning. Google couldn't help either.
Doing an occasional build (without string the app) is a good practice when working with resources so that you can clean up any problems in your files, such as duplicate entries or syntax errors.
Note from the Author or Editor: The word "string" should be "starting"
|
RonAdam |
Jun 13, 2013 |
|
PDF |
Page 811
3rd <p> |
"to" should be "do"
Now for the fun part: how to we reference the string resources in markup?
|
RonAdam |
Jun 14, 2013 |
|
PDF |
Page 813
1st <p> |
inserted "pages"
In all of this, one of the more challenging pieces of markup to work with were the HTML pages for settings flyouts, namely the about.html, help.html, and privacy.html PAGES in the project?s HTML folder.
Note from the Author or Editor: Alternately, can omit "the" before about.html
|
RonAdam |
Jun 14, 2013 |
|
PDF |
Page 820
1st <p> |
second "Control" should be deleted
Go to Control Panel > Control Clock, Language, and Region > Language and make sure the target language is added and is placed at the top of the list.
|
RonAdam |
Jun 14, 2013 |
|
PDF |
Page 821
3rd <p> |
"Psuedo" should be "Pseudo"
It helps you validate that your app can handle a variety of languages, because the fictitious Psuedo Language contains some of the most problematic characteristics of localized text.
|
RonAdam |
Jun 14, 2013 |
|
PDF |
Page 827
1st <p> |
"app page" should be "app package" ?
And just in case you?re interested, the maximum size of an app page for upload is 2GB (see Building the app package).
|
RonAdam |
Jun 14, 2013 |
|
PDF |
Page 828
2nd <p> |
"one" should be "once"
All such data will surely feed back into your planning and development processes, ultimately bringing you to the point of one again uploading your app with new promotional materials and more features.
|
RonAdam |
Jun 14, 2013 |
|
PDF |
Page 830
2nd <p> |
"support" should be "supports"
The more you can deliver an app that understands and support this (and obviously roaming data is important here!), the more I think the app will stand out from others that, sure, run in the new environment of Windows, but otherwise offer the same experience as we?ve had for many years.
|
RonAdam |
Jun 14, 2013 |
|