Your SDK location contains non-ASCII characters - no Android in Tools Menu - android-studio

I've just downloaded and installed Android Studio but there is no Android submenu in Tools menu and no AVD Manager icon on the instrument panel. When I start SDK Manager, there is an error message:
Please specify a Android SDK location
SDK Manager screenshot: "Please specify a Android SDK location"
If I click on Edit link next to Android SDK Location field, there is another error message:
Your SDK location contains non-ASCII characters
SDK Components Setup screenshot: "Your SDK location contains non-ASCII characters"
I studied these somewhat similar questions, but non of them helped me:
Your project path contains non-ASCII characters android studio
Unable to install SDK tools component while installing Android Studio
unable to install or locate android sdk in android studio
NO Android option in "tool" menu, and no avd manager
I see that the path really contains non-ASCII characters, but is there any workaround other than uninstall Android Studio and then install it from scratch to some other directory like С:\Android\SDK?
UPD:
it seems there is no such workaround at this time

As a matter of fact at the moment there is no other way than to re-install Android Studio to some other directory with no non-ASCII characters and blank spaces, like С:\Android\SDK

I guess you've solved this by now but I ran into the same problem today and after a little research and some annoying tries I solved it. What I found out is this:
Using mklink function you can create a junction to a location but it will not boter if you are creating a it to a non existing location(that's the "file not found" you were getting). And you are creating a junction to a non existing location in this case due to C:\Users\username\AppData\Local\Android\Sdk should(not sure about this) be created by the Android Studio Setup Wizard during installation. In order to solve that, you should create \Android\Sdk in C:\Users\username\AppData\Local and it's done.
The installer does not show junctions to non existing locations in the Sdk install location so if you don't create the folders you can't select the link.
Finally but not less important, the installer does not allow the Sdk to be installed in a folder in the root directory C:\, so you have to create the junction in any other directory but the root one or move it if it's already there(that's what I did).
As I was writting this the installer was running and when it was done I came across the exact same problem with the location to store Android Proyects, and so the same solution to the installer must be aplied to the Save location in the New proyect step.
This is exactly what I did:
1) Create \Android\Sdk in C:\Users\username\AppData\Local\
2) Open cmd as admin and enter the following command:
mklink /J "C:\..\android-sdk" "C:\Users\username\AppData\Local\Android\Sdk"
It will return this:
C:\WINDOWS\system32>Junction created for C:\..\android-sdk <<===>> C:\Users\username\AppData\Local\Android\Sdk
Note: android-sdk is the name the junction will have, you can name it as you like and \..\ reffers to the folder where you want to put the it in, make sure there are no non-ASCII characters in the folder's name anyways.
3) In the Sdk install location, select C:\..\android-sdk and the installation will be ready to go.
4) Repeat the process for the Save location for new proyects, just instead of C:\Users\username\AppData\Local\Android\Sdk use the location you want the proyects to be stored in.
Didn't try moving the junctions files but I suggest you don't, I guess that could get the paths lost and mess up the installation.
Hope this is usefull and good luck with your proyects!

If you don’t want to reinstall the Android SDK in another location you can also create a junction point which is a link to the actual location. You can use the junction tool to do this.
For example, you can create the directory C:\Android and then create the junction SDK and claim the SDK lives there with
Junction C:\Android\SDK C:\Users\Whatever\actual\location
The operating system will show the same contents under both paths and applications will not know the difference.

Hey I had the same problem here but I was able to fix it by just changing the directory to a new folder directly on the hard drive.
Hope this can help.

In my case since I have a Windows 10 operating system, and my sdk was located in Program Files. Having spaces in the directory caused some sort of error, to solve this I used mklink to create a junction called android-sdk in the C drive that pointed at the directory where my sdk was located.
If you can't find the sdk in
C:\Users\username\AppData\Local\Android\Sdk
I suggest looking at
C:\Program Files (x86)\Android\android-sdk
then trying
mklink /J "C:\android-sdk" "C:\Program Files (x86)\Android\android-sdk"
Afterwards open Android Studio go to Project Defaults > Project Structure > Android SDK, click on the "..." button to browse for your sdk and select the junction you just created. Or if you still haven't setup android studio because of this issue, open the application as administrator select the theme settings and all that, and when you reach the setup sdk section, click on the "..." button to browse for your sdk and select the junction you just created.
Important to run Android Studio setup as administrator otherwise you may experience issues downloading components, if you still have issues it might be your antivirus blocking the setup.

Related

What to do if Android SDK is not found in Android Studio

I have installed Android Studio, but its not locating Android SDK, I even tried to change the directory, but in vain.
Please check the photo to see the problem
go to the SDK manager just like in you image, press on edit, you'll get a setup wizard that will download the SDK files for you, if you think it's already been installed try to use the following directory
C:\Users'your_username'\AppData\Local\Android\Sdk
this is where the SDK is usually downloaded to, also note that the appdata folder is hidden in the file explorer

Unable to find Android SDK to build Unity application

I am currently developing an application using Unity3D, and I would like to build the app on the android platform. When I attempt to build with android, I am always prompted to 'Select Android SDK Root Folder'. It looks like this:
My problem is that I cannot find the Android SDK Root Folder, and therefore I cannot build the project.
To attempt to find the correct path, I used the configure SDK manager within Android Studio. I was given this as a path:
/Users/Luke/Library/Android/sdk
Just be sure, I checked this path in the terminal and found the sdk directory.
However, when I attempt to use the finder in Unity, I have no idea where the sdk directory is located. When I follow the path Luke/Library/Android,
I get a multitude of folders called Android, but none of these folders contain the sdk directory, or even resemble what I'm looking for.
Another pic:
Obviously, I cannot select any of these directories as the path, and therefore I am stuck at this step in the build.
Question:
How might I go about finding the SDK root folder in Unity?
I just found a simple solution to the problem, thanks to Julien_Nantes on the Unity forums -> https://forum.unity3d.com/threads/os-x-remember-to-install-the-android-sdk-via-the-sdk-manager-not-android-studio.288419/
If the sdk directory is added to the favorites on the left size bar, we can easily select it in the Unity finder.
In order to find the sdk folder in the finder application, I navigated to the correct directory in the command line and ran open . With that open, I added the sdk folder as a favorite.

Unable to locate package source : vcRuntimeDebug_amd64\cab1.cab visual studio

I tried to install Visual Studio 2012 . but it showing me "Unable to locate package source" I can select "Download from the internet" or "Provide a location to search for the packages" And this is path that comes up:
C:\Users\JA\Download\packages\vcRuntimeDebug_amd64\cab1.cab
(the 'packages' folder does not exists) When I select to download from the internet its showing up again after some time, I searched for "vcRuntimeDebug_amd64" folder but it doesn't contain "cab1.cab" file ;/
Note please, that i runned setup file as administrator and i disable firewall .
I had the same problem but with Windows Phone 8 SDK. I tried several things (which are detailed below, in my previous answer), and the best option was to download the ISO, found in the Install Instructions section:
http://www.microsoft.com/download/details.aspx?id=35471
After finishing, it said it couldn't download that runtime, but at least the emulator is running fine. I guess you could manually download that runtime
afterwards if you have any problems. Here's the link:
http://www.microsoft.com/download/details.aspx?id=30679
Previous attempts:
I downloaded the Visual C++ Redistributable for Visual Studio 2012 Update 4 to see if that way the installer skipped that step, but it didn't work.
Then I looked for cab1.cab in my disk and found it in several folders, being this one the one that worked:
C:\ProgramData\Package Cache\{CF2BEA3C-26EA-32F8-AA9B-331F7E34BA97}v11.0.61030\packages\vcRuntimeMinimum_amd64
Of course that GUID will be different in your case, so you should look for a vcRuntimeMinimum_amd64 folder.
Inside that folder was not only the cab1.cab but also a vc_runtimeMinimum_x64.msi file. When I told the installer to use that folder, it still didn't work. Then I chose "Browse" but when I opened that folder it didn't show any file because the installer was looking for vcRuntimeMinimum_x64 (without the underscore). I typed "." in the textbox so it showed all the files, I chose vc_runtimeMinimum_x64.msi and the installation continued. It took a while but it worked.
Later I had the same issue with sdk_tools35res.cab. I told the installer to use v3.11.50727\packages\sdk_tools35res\sdk_tools35res.msi and the process continued.
But in the end, I got three errors: Tools for .Net 3.5, MS VC++ runtime and .NET 4.5 SDK. So then I decided to download the ISO.

What is the extension of a Android Studio project file?

What is the Android Studio equivalent of Solution file in (.sln) file in Visual Studio ? I created a project in Android studio and closed it. Now I am not sure which file should I open to reload it into Android studio.
Use the import project function on the build.gradle file in your project root (not the folder itself!) to open the project again in Android Studio.
I think ".iml" is the extension for Android studio projects.
".project" is for Eclipse projects
Opening a saved project on another drive
There is no such single project file that needs to be opened but rather the directory where the whole project is stored.
Find the directory where you have saved your project
In Android Studio -> Files -> Open->(click on the directory name where your files/project is stored)
Except using android studio unique method(import), you can also double click .iml file to open corresponding project.
If you using Windows operating system, you could right click .iml file in file explorer, and select studio64.exe to open it, then android studio start the project!
At least in the version I have, like intellij the "android studio project files" are stored in a folder called '.idea' in the root of your workspace (though you can explicitly create one that looks up the tree and have it not be in the root).
If you add this folder to source control, do not add the file "workspace.xml" as that is the state of the window positions on your machine and should remain local, checking it in will cause lots of confusion.
If this directory is present, android studio will give the containing folder an android studio icon in it's open file browser window in the windows version. You can click on the directory with this icon in intellij (android studio) and open the project.
In Windows, Click at projectname.iml under project directory root. If window is not does not have the .iml file association with Android Studio, you need to add it.
When you select File->Open in Android Studio and navigate through folders, you will notice that folders which consist valid Android projects would have the Android Studio icon, clearly indicating that this is all you have to select.
It is unusual approach in terms of normal behavior of programs under Windows, because since very first versions of Windows it's become accustom to be able to open a program by double-clicking on the file associated with such program, but I guess developers of Android Studio decided not to do that.
It is possible that ".iml" file could be associated with Android Studio but it doesn't happen by default and it's not associated on my computer neither.
I ran into this problem, after upgrading Android Studio to 3.0 on Mac. The previous projects I had created were not displayed, in the splash screen, during startup of 3.0, so what I did was:
1. Pick the option to Open a project
2. Navigate to the location where the project was previously saved (~/AndroidStudioProjects/projectFolder)
3. Select the folder (don't double-click it)
4. Click button: Open
5. Result: this opened the project.
So there is no need to select any particular file. I suspect the filer of this problem was double-clicking the project folder and then wondering what to select next, which is what I did, initially. But it turns out that the Open button is required, in order to open the project. Otherwise, Android Studio anticipates that your intention is to open the folder.
.iml file can be used to open the project directly into Android Studio (I am referring to Android Studio 3). Just goto your project folder and then double click on yourProject.iml file.
I know its late but better late then never :-)
Visual Studio uses one solution file. Android Studio does this different. It uses a directory for this purpose, namely the directory .idea in your project. In this directory several files make up how your IDE is configured for that project. The same as in Visual Studio. Those files can be edited and changed, but you will have to know what is what in those files.
I think the answer is .duh
Please see screenshot:

Android Studio - How to Change Android SDK Path

When I open Android SDK Manager from Android Studio, the SDK Path displayed is:
\android-studio\sdk
I want to change this path. How do I do it?
From Android Studio 1.0.1
Go to
File -> project Structure into Project Structure
Left -> SDK Location
SDK location select Android SDK location (old version use Press +, add another sdk)
For projects default:
Close current Project (File->Close project)
You'll get a Welcome to Android Studio Dialog. In that:
Click on Configure -> Project Defaults -> Project Structure
Click on SDK Location in the left column
Put the path to the Android SDK in "Android SDK location" field.
(Example SDK location: C:\android-sdk; I have sub-folders like
add-ons, platforms etc under C:\android-sdk)
Click OK to save changes
Have fun!
Following steps were for older versions(<1.0) of Android Studio
In the middle column Click on Android SDK (with Android icon) OR click + on the top if you don't see an entry with Android icon.
Change SDK Home Path and select valid Target.
From the quick start window, choose Configure, then choose Project Defaults, and then choose Project Structure. Then on the left under Platform Settings choose SDKs. Then to the right of that choose the current android platform, mine was Android 4.2.2 Platform, and delete it using the red minus button at the top, then add a new android platform using the green plus button at the top and point it to your current SDK folder and that is it.
I Configured in this way
on
Welcome to Android Studio Screen
Click Configure Then
Project Defaults and then Project Structure
Then
Android SDK and Selected the path to my current location of Android SDK
Changing the sdk location in Project Settings will solve the problem partially. When Android Studio is used to download a new SDK, it will place the new SDK in the internal SDK folder (inside Android Studio).
Existing android developers will already have a large sdks folder (hereinafter referred to as external SDK folder) containing all the SDKs downloaded before Android Studio came around.
For Mac/Linux users though there is a good way out. Soft links!
Exit Android Studio and perform the following steps:
cp -r <Android Studio>/sdk/ <external SDK folder>/
cd <Android Studio>/
mv <Android Studio>/sdk/ mv <Android Studio>/sdk.orig
ln -s <external SDK folder>/ sdk
And we're good to go. Launch SDK Manager after starting Android Studio, watch as it discovers all your existing SDKs like a charm :).
EUREKA I found it!
With the current Studio 1.3 each project has a local.properties file where you can edit the SDK!
Here's how you can change the android sdk path in Android studio:
Open your required android project in Android studio
Click on the main project folder and press F4
Now click on "SDKs" under Platform Settings (Left hand side of the dialog box)
You should now see a plus sign on the top, click it and choose "Android SDK"
Now you would be asked to choose the required SDK folder
Select the required build target(if necessary) and click "ok"
Now you should see the new entry in the list of SDKs
Click "Modules" under Project Settings
Select your project folder and in the Dropdown for "Module SDK", select the new SDK entry and click "apply"
Now click "OK" and your done.
Note: If changes do not take effect, restarting android studio should fix the problem.
Make your life easy with shortcut keys ctrl+shift+alt+S
or
by going to file->project structure:
it will open this window, where you can select your SDK
Try this way i try in Android Studio 2.0
Step 1: File->Settings
Step 2: Settings->SDK options
Step 3: Click Edit option in Sdk Location
Step 4: Show "SDK Components Setup"
Step 5: Click on Three "..." in "SDK Components Wizad"
Step 6: Select your new SDK Path
I noticed that the latest version of Android Studio doesn't seem to have the option "SDKs" path that's mentioned in many of the answers. I'm guessing that disappeared in one of the updates, somewhere down the line?
The way i solved this issue (osx) was:
Go to Project Settings (Cmd + ;)
In SDK Location make sure you're pointing to the correct SDK location (typically /Applications/Android Studio.app/sdk) then hit Apply
Most important step - hit "Sync Project with Gradle files"
I wasn't doing Step 3 and that was throwing me off. After a sync all your source r belong to us....
goto menu File->Project Strucurt or key Ctrl + Alt + Shift + S
and example http://how-to-android-studio.blogspot.com/2014/11/set-sdk-location.html
You can also create the environment variable (in Windows) ANDROID_HOME to the location of the Android SDK and Android Studio will use that.
Above answers are pretty correct, but some times Android Studio, does not like to refresh after SDK path change, a quick solution is to make some change in you Build file, and click on Sync. It will refresh you project.
Happy coding... :)
While first installation There are two situations either you have pre-installed Android SDK if you had used it in past or you have nothing at all, At a time of installation Installer always ask user how you want to configure SDK with your studio.
You can simply give a path here or browse folder where sdk is available in local system. If you already have SDK, Another option as shown in below picture at Left down corner there is a nice option for download SDK, by clicking it you can download SDK with latest release right from there,You can also use third option see in right down corner setup Android SDK for me by clicking it you can step by step set your sdk.
Although you can also set it up when Android shows you list of available projects, a starting prompt window shown below
That's pretty easy, and also sometime if you want to change your SDK you can always change it right in your Android Studio from
On windows system
File --> Project Structure and then you will see SDK Location Option and from there you can set it up by providing a path or by browse it.
Or if you are on MAC system then from Platform settings.
In Android Studio 2.2.3 I think you can change default SDK location for all projects from the top menu:
File -> Project Structure...
A window like below shows up:
in windows press ctrl+shift+alt+s which will open project properties where you can find first option named SDK Location click on it and there you can change SDK path, JDK path and NDK path also
This may not be what you want, but being an eclipse user I had the same problem having duplicate sdk folders which were eating all my ssd space. Currently you can only change sdk path inside android studio project wide which is annoying. What I did instead was I copied all the previous android sdk files that I was using with eclipse to /Android Studio/sdk/ and then just changed the sdk path inside eclipse.
Now both android studio and eclipse are happy.
Here is some ways, as far as I know now.
Android Studio 3.3.2 (testing is OK)
method: 1
just following steps of the official docs, as bellow link shows
https://developer.android.com/studio/intro/studio-config#jdk
method: 2
following steps of the screen shortcuts, as bellow shows
method: 3
following steps of the screen shortcut, as bellow shows
Tap --> file --> close current project.
You'll Android Studio home page
Click on Configure -> Project Defaults -> Project Structure
Click on SDK Location in the left column and copy the path.
Paste the path in My computer --> Right Click -> Properties -> click on Advanced system settings -> Environment variables and change the android home path.
click on 'OK' to save the session.
Add tools and platforms tools in path and save the changes.
Open command prompt[window+R] and type adb + enter.
In Android Studio you can set the general Android SDK path in the file: %Home%.AndroidStudio2.1\config\options\jdk.table.xml
Click on File menu.
Select Project Structure.
Edit the path in SDK Location text box.
From the next time Android Studio will use this location for all your projects.
N.B.: Avoid having spaces in the path as it may sometimes lead to issues.
This is how its done,in Android Studio for windows
Done
For Android Studio 3.1.2:
Tools>> SDK Manager>> Edit "Android SDK Location" to new location
After that, Set environment variable $ANDROID_HOME to your new SDK location
I had the same problem, but with the sdk path pointing to a mounted drive. I found, that simply quit Android Studio, unmount the device and restart Android Studio made it ask for the sdk location, because it had none (Android Studio Beta 0.8.7).
Therefore I guess if you just quit Android Studio, delete \android-studio\sdk or move it somewhere else and start Android Studio again, it should ask for the sdk location aswell.
Though many of the above answers serve the purpose, there is one straight forward thing we can do in project itself.
In Eclipse, go to Window->Preferences, select "Android" from left side menu. On the right panel you will see "SDK Location". Provide the path here.
Good luck.
In Android studio 1.2.2 you can simply changes project based SDK,
Steps:
Right click on Module and select Open module setting or press F12
Select SDK location from left hand side
Now you can change SDK location as well as JDK location from this page
When I ran into trouble with this on Android Studio 3.1.4 the solution was to go into the app dropdown on my project, then Edit Configurations > Defaults > JAR Application where there is a JRE box on the initial Configuration tab. Setting that to my JRE path solved the problem for me.
Simple Answer Work For Sure...
Step 1: Right Click On The Project>> Select Open Module Setting -->
Step 2: Select SDK Location From the Right Side below image
Step 3: Now browse the SDK location from your computer as show below...
Step 4: Click on OK.
I'm guessing from the responses that people aren't understanding your question... If I'm right in that you want to have ~\Desktop\github\ then changing the SDK location isn't what you're after.
From Android Studio 3.2.1:
From the new project dialog, choose
Configure -> Preferences -> Tools -> Terminal -> Start Directory
Put the folder you want as your project default in the field.
e.g. Mine is set to
~/Desktop/github/
since all my work is in
~/Desktop/github/
Just go to
(Main Menu) File > "Sync Project With Gradle Files"
click ok on the popup, it will change your sdk directory.

Resources