Archive for the ‘tablet’ Category

As part of my .NET 301 Advanced class at the fantastic Eleven Fifty Academy, I teach Xamarin development. It’s sometimes tough, as every student has a different machine. Some have PCs, others have Macs running Parallels or Bootcamp. Some – many – have Intel processors, while others have AMD. I try to recommend students come to the class with Intel processors, due to the accelerated Android emulator benefit Intel’s HAXM – Hardware Acceleration Manager – provides. This blog entry is a running list of how I’ve solved getting the emulator running on so many machines. I hope the list helps you, too.

This list will be updated from time to time, as I find new bypasses. At this time, the list is targeted primarily for machines with an Intel processor. Those with AMD and Windows are likely stuck with the ARM emulators. Umm, sorry. I welcome solutions, there, too, please!

Last updated: December 4, 2017

Make sure you’re building from a path that’s ultimate length is less than 248 characters.

That odd Windows problem of long file paths bites us again here. Many new developers tend to build under c:\users\username\documents\Visual Studio 2017\projectname. Add to that the name of the project, and all its subfolders, and the eventual DLLs and executable are out of reach of various processes.

I suggest in this case you have a folder such as c:\dev\ and build your projects under there. That’s solved many launch and compile issues.

Use the x86 emulators.

If you have an Intel processor, then use the x86 and x64 based emulators instead of ARM. They’re considerably faster, as long as you have a) an Intel processor with virtualization abilities, which I believe all or most modern Intel processors do, and b) Intel’s HAXM installed.

Make sure VTI-X / Hardware Virtualization is enabled.

Intel’s HAXM – which you can download here – won’t run if the processor’s virtualization is disabled. You need to tackle this in the BIOS. That varies per machine. Many devices seem to chip with the feature disabled. Enabling it will enable HAXM to work.

Uninstall the Mobile Development with .NET Workload using the Visual Studio Installer, and reinstall.

Yes, I’m suggesting Uninstall + Reinstall. This has worked well in the class. Go to Start, then Visual Studio Installer, and uncheck the box. Restart afterwards. Then reinstall, and restart.

Mobile Development Workload Screenshot

Use the Xamarin Android SDK Manager.

The Xamarin team has built a much better Android SDK Manager than Google’s. It’s easy to install HAXM, update Build Tools and Platforms, and so forth. Use it instead and dealing with tool version conflicts may be a thing of the past.

Make sure you’re using the latest version of Visual Studio.

Bugs are fixed all the time, especially with Xamarin. Make sure you’re running the latest bits and your problems may be solved.

Experiment with Hyper-V Enabled and Disabled.

I’ve generally had issues with virtualization when Hyper-V is enabled. If you’re having trouble with it enabled, try with it disabled.

To enable/disable Hyper-V, go to Start, then type Windows Features. Choose Turn Windows Features On or Off. When the selection list comes up, toggle the Hyper-V feature accordingly.

Note: You may need to disable Windows Device Guard before you can disable Hyper-V. Thanks to Matt Soucoup for this tip.

Use a real device.

As a mobile developer, you should never trust the emulators to reflect the real thing. If you can’t get the emulators to work, and even if you can, you have the option of picking up an Android phone or tablet for cheap. Get one and test with it. If you’re not clear on how to set up Developer Mode on Android devices, it’s pretty simple. Check out Google’s article on the subject.

Try Xamarin’s HAXM and emulator troubleshooting guide.

The Xamarin folks have a guide, too.

If all else fails, use the ARM processors.

This is your last resort. If you don’t have an Intel processor, or a real device available, use the ARM processors. They’re insanely slow. I’ve heard there’s an x86 emulator from AMD, yet it’s supposedly only available for Linux. Not sure why that decision was made, but moving on… 🙂

Have another solution?

Have a suggestion, solution, or feature I’ve left out? Let me know and I’ll update!

 

Quick thought for the day: Microsoft’s OneDrive doesn’t appear to act “smart” when it’s installed on a tablet, or what I prefer to call a Limited Storage Space Device. The premise of OneDrive is clear: store your stuff in the cloud and keep your device clean of clutter, holding local only what you need. Google made the same business case with their Chromebooks and Google Drive, but “cloud-first” is in its teenage years.

On a Limited Storage Device, such as a tablet or a phone, OneDrive should be smart enough to take offline, locally cached files, and make them “online only” again, freeing up the space. It doesn’t do this, and thus silently, and sometimes quickly, eats up storage on the device. Case in point: I recently drove Tail of the Dragon and took hundreds of photos. About one gigabyte of these I copied from my camera to OneDrive. One day later, my Dell Venue Pro 8 tablet started complaining of low drive space. OneDrive had copied the files from the cloud to the device, automatically, even though there was no reason to do so. The device wasn’t requesting those files. Yet, even if for whatever reason there was a valid request, shouldn’t OneDrive have “put them back” in the Cloud?

Microsoft – if you ever listen about device categories you’ve had a tough time understanding – you can’t treat these limited storage devices like mainstream PCs. You have to, pardon the pun, “think differently” and make your software do the same. The above scenario, where your Cloud solution makes a non-mainstream device relatively unusable due to a mainstream PC approach, is very common amongst your current product offerings. My gosh, just look at Office on a tablet.

Thanks for listening Smile

-Auri

I’ve spent the past few days using Dell’s solution for those who need a keyboard for their Venue Pro 8 tablet. It has come in handy when needing to write emails and edit documents. I have yet to write code with it, although I plan to soon. Unfortunately, while the keyboard and case match the Venue Pro 8 perfectly, it’s hard to recommend this accessory for medium to heavy duty work until Dell treats the keyboard with the attention to detail afforded its laptop-bound brethren.

Every time I use a compact keyboard I am reminded all designers of such keyboards must be sadists. They move keys around to obscenely hard to reach places. Sometimes they remove keys altogether, making the keyboard worthless. Dell’s Tablet Wireless Keyboard for their Venue 8 Pro is no exception. Take a gander at the photo below. Why does the keyboard need two Alt keys? Couldn’t that second Alt be used for the apostrophe, which is explicably a Function key combination? Why is the question mark key on the left, next to a full size shift key, when it could have been put in its normal position next to a smaller right shift key?

image

That’s not to say it’s all bad. Actually, the keyboard itself is quite good for short emails and corrections to documents. Expectations are usually low for compact keyboards, so this is better than some when it comes to comfort. I didn’t make many mistakes, although any time I needed certain punctuation I had to stop and think. It’s the ergonomic and functionality decisions, and aforementioned omissions, that make absolutely no sense. For example:

  • The keyboard has no backlight. If Microsoft can insert a backlight in a keyboard half as thin, why can’t Dell?
  • Two watch batteries are required. Yes, it comes with them, but those things are expensive. Why isn’t there a rechargeable battery that could charge via MicroUSB from the Venue Pro’s USB port?
  • I said it before, but come on – what in the world were they thinking with the apostrophe and quote keys? They’ve moved from a normal location – next to : and ; – to requiring a Function Key combination. But they left { and } intact? Who uses those often while typing in Word or web sites? Maybe developers, like me, but we need the quote and apostrophe, too!
  • The keyboard connects magnetically to the case – which is awesome – except, the keyboard doesn’t deactivate itself when the magnet is engaged. That causes key presses to turn the tablet on, thus draining the battery. It also drains the keyboard’s battery. It sounds like a simple engineering task, magnet turning off the power circuit, but maybe I missed something? The magnet is also a bit weak. Don’t treat this like Microsoft’s Surface keyboard. You’ll want to place the keyboard elsewhere if you’re only going to use the Venue Pro 8 as a tablet.
  • If the on-screen keyboard can fit all keys on the Venue Pro’s screen, why can’t the physical keyboard that has more physical room?

If you were a product manager, would you let this thing ship with such obvious issues?

Those gripes aside, I like the keyboard, and its design complements the Venue Pro 8. The design of the folio case, it’s built-in pen holder, and magnetic grip of the keyboard to the case all make this a worthwhile addition to your Dell Venue Pro accessory list. Just don’t expect to get much work done with it if you need apostrophes, dashes, or quotes.

Pros: Keyboard perfectly matches contours of the Venue Pro 8, and connects magnetically. Package comes with a case that looks very nice and can hold the digitizer pen. Keyboard can be left in the car, at home, and so forth, so you don’t have to carry it around when not needed.

Cons: The keyboard + case combo seems to weigh as much as the Venue Pro, practically doubling the weight. Alcohol must have been involved when deciding the keyboard layout. The magnet is a bit weak. The keyboard isn’t good for any long documents due to the layout’s inexplicable key locations.

SAM_8765

Figure: The keyboard connects magnetically to the flap on the case.

SAM_8764

Figure: The keyboard looks great even when not being used. That doesn’t mean it folds back like the Surface – it will fall off if you treat it like Microsoft’s prodigy.

SAM_8763

Figure: The keyboard runs off two CR2025 3 volt batteries. The tray is a bit difficult to remove.

SAM_8776

Figure: The keyboard.

SAM_8762

Figure: Unwrapping.

SAM_8761

Figure: The packaging. Front.

SAM_8760

Figure: The packaging. Back.

I’ve posted this in Microsoft’s forums, but in case anyone else is running into this issue, I’d like to know…

Situation:

– I have a home security camera. All motion detected photos are saved to a folder on a home machine, located in my local SkyDrive folder. I forgot to clean up this folder, so there were hundreds of thousands (~90 gigs) of files in the individual daily folders in this folder.

– On SkyDrive.com, to speed up the delete process, I deleted all folders I no longer wanted. Remember, this is 90 gigs or so. I figured this would delete those files from my home machine.

– Upon deletion, SkyDrive started copying all those deleted files to *every connected device’s Recycle Bin*, including my Windows tablet with its scant 32 gig drive!!!

– Now all my machines’ primary drives are filling up due to the Recycle Bin being filled by SkyDrive. This is especially troubling on the tablet, which is crashing often due to being out of space as it fills up every 30 mins or so, syncing over WiFi. No, I don’t have SkyDrive set to sync any folders to that device.

– All machines are running Windows 8.1. The tablet came with 8.1, and the desktops and laptop were upgraded to 8.1 from 8.0.

Bug:

– If a file is deleted on SkyDrive, it should not immediately be transferred to all connected devices. This is especially true for tablets.

Solutions / Workarounds:

– None known.

– Feature request possibility: This should be a feature that can be enabled or disabled, and disabled by default.

– Fix: Microsoft should disable the copying of deleted files to all connected devices, and come up with a better solution for handling this scenario.

I’m looking forward to feedback, as this has caused tremendous amounts of trouble in my ability to use Windows devices. It’s almost pointless to have a Windows tablet, since my online SkyDrive activity is not cognisent (sp?) of what device types to which its connected.

Thanks,

-Auri

I know it may be an act of pure sadism, but I see value in having a full development environment available in a package that weighs less than a pound. My Dell Venue 8 Pro runs full Windows 8.1, so why not write code on it? Well, there’s a limitation. I’m chea… err, frugal. So, I bought the 32GB device, on sale for $99 during Microsoft’s “12 Days of Deals” event. After clearing out a lot of space, and after installing all my Windows Store apps, I had just under 6 gigs free. Visual Studio takes roughtly 5.38 gigs for a base install, and more than 7 for a full. I still want to download apps, so using all that precious main storage space isn’t an option.

So, why not use the MicroSD expansion, you say? Great idea! Oh, wait… Visual Studio won’t install on removable media unless it’s Windows To Go certified, which only a handful of USB drives, and no MicroSD cards, can claim privileged membership. What is a developer to do?

Mount Points

It turns out there’s a workaround, but it requires you to “trick” Windows. I want to use that MicroSD and all its 16 gigs of practically unused storage. (Yes, I could have used a 32, but I didn’t have one handy at the time. Anyway…)

Using a feature in NTFS that allows you to permanently point the contents of an empty folder to another drive, in this case the MicroSD, you can install anything you want in that folder, and it won’t affect the available drive space on C:, safely keeping everything in the “remote” storage location. These remote locations are called NTFS Mount Points.

Now, there’s a catch… Even if you have a 32 GB MicroSD, that doesn’t increase your primary drive’s capacity by 32 GB. If your C: drive, in this case, only has 6 gigs free, then that’s what any Windows Installer will see as available. Now, once the installation is underway, it won’t run out of space when installing. However, if you don’t have enough space on C: to install in the first place, it won’t continue. So, before you try this process, make sure you have enough room on the drive for installation as if you were installing without the remote storage location!

Ready? Let’s Go

The entire process is very simple. We’ll start at the Desktop, which you can access on the All Programs menu.

  1. First, make sure you have enough space free on your C: drive, since that’s where Visual Studio will want to install on your tablet.
  2. Open Explorer, go to your C: drive, and create an empty folder. I named mine MicroSD, so I know the contents are on the removable media. You might ask why I simply didn’t redirect my Program Files folder. Here’s the reason: That’s a risky move, and the MicroSD card is slower than the built-in SSD. Also, if the MicroSD fails, I can simply reinstall the non-essential programs in that folder, without affecting all my primary apps and overall tablet usability.

    image

  3. Long-tap This PC in the side panel, and select Manage.

    image

  4. When the Computer Management window appears, tap Disk Management under Storage.
  5. Long-tap your MicroSD card in the list of Volumes on the top, and select Change Drive Letter and Paths.
  6. Tap Add, then tap the option for Mount in the following empty NTFS folder, and select your folder by tapping Browse.

    image

  7. That’s it, now you can install Visual Studio! Simply set the install location to the new folder you created instead of the standard Program Files folder.

A few notes when installing:

  • Remember, this is a tablet with 2 gigs of RAM. Don’t install SQL Server and the like.
  • Don’t run servers on your Venue Pro unless you want to kill the battery. Yeah, it’s Quad Core, but it’s also a low power processor built for on-the-go computing.
  • Visual Studio still installs a lot on your C: drive in the Program Files and Windows folders. It’s a development system, after all. So, be prepared to sacrifice 2-3 gigs of available space there.
  • As you develop, Visual Studio still has its little droppings of temp files. Clean up a bit more often if you’re doing a lot of dev.

What about a keyboard?

That’s what I was thinking… I just ordered the Dell Tablet Wireless Keyboard accessory from Dell’s site. It’s still pending shipping, so once I receive it, I’ll post a review.

I have a link to the accessory in this post.

I’ve been looking around on the Venue 8 Pro product page for the Wireless Keyboard accessory, but it always says “Coming Soon.” Checking with Dell Sales Support, I was able to get the link. I’ll order one and give a review.

Here’s the link: http://accessories.us.dell.com/sna/productdetail.aspx?c=us&l=en&s=dhs&cs=19&sku=460-BBHL&baynote_bnrank=0&baynote_irrank=0&~ck=baynoteSearch

Enjoy, and Happy Holidays!

-Auri

image

UPDATE (13-Dec-2013): Microsoft has a fix: http://answers.microsoft.com/en-us/windows/forum/windows8_1-networking/dell-venue-pro-loses-wireless-connection-after/bc8a1426-fdb8-466d-b074-c80a06e70d76 and direct link to update http://www.microsoft.com/en-us/download/details.aspx?id=40755

UPDATE (10-Dec-2013): Updated to include fix for WiFi problems caused by latest Patch Tuesday installs.

My WiFi stopped working on my Dell Venue Pro 8. Uninstalling Microsoft Updates KB2887595 and KB2903939 fixed the problem.

TIP: After uninstalling these updates, you can go back to Windows Update via the method below, scan for updates, then right-click the updates and select Hide this Update so Windows doesn’t repeatedly try to reinstall it.

To do this:

1. On the Start menu, swipe down to All Applications

2. Scroll all the way right and tap Control Panel

3. When Control Panel appears on the desktop, search for Windows Update by typing in the search box, and tap it

4. On the left pane there will be an option for View Installed Updates. Tap it.

5. Find Update for Microsoft Windows (KB2887595) and tap it, then tap Uninstall. If you also have update KB2903939, don’t restart yet. Otherwise, skip to step 7.

6. Find Update for Microsoft Windows (KB2903939) and tap it, then tap Uninstall.

7. Restart.

8. Your WiFi should be working again.