When I toggle on the install via USB in developer mode:
it will pop the toast message said that the device is temporarily restricted
then toggle off the settings.
Is there any solution for this?
I searched through all the way like turning off MIUI optimization but still does not work. I cannot debug my application by Android Studio in this way......
"Install via USB" wont work if your Xiaomi phone is running MIUI 8 or above. Looks like when you try to Enable this option, your phone trys to connect to some chinese server and fails.
I got a work around and it worked for me. Idea is to connect to Chinese-Shanghai server through VPN. Try the following:
Install PlexVPN from Playstore and login into it. You will get a 24 hr free VPN service.
Select China-Shanghai server and connect.
From developer option in your Xiaomi phone, Enable "Install via USB".
You can then disconnect the VPN and logout from PlexVPN.
Enjoy!!
All you have to do is Turn your Wi-Fi off, turn on mobile data, and then enable the setting for "Install via USB". It'll go through.
Source: http://en.miui.com/thread-544718-1-1.html
For me on a rooted MIUI v.8.5.1 I just need to:
turn off wifi
turn on mobile connection In development options
after doing that both Install via USB and USB debugging started to work.
Try this
Settings -> Additional Settings -> Developer options -> Turn off Miui Optimizations -> Restart
Security -> Permissions -> Gear Icon at top right corner -> Turn On "Install via USB"
Settings -> Additional Settings -> Developer options -> Turn On/Off "USB Debugging" -> Turn On "Install vis USB"
Turning off Wi-Fi and enabling Mobile Data (thank you Xiaomi for wasting my money to enabling mobile data which the last one I didn't have) on Xiaomi 4A did not work for me. Every time I tried to enable Install App Via USB it displayed me "the device is temporarily restricted". So, I found this solution:
Turn on VPN onto your device with these parameters and try again toggle Install from USB:
Server Address: China server from https://www.vpngate.net/en/
IPSec Key: vpn
Username: vpn
Password: vpn
(1) Turn Off your Wi-Fi
(2) Turn On your Mobile Data
(3) Turn On "Install via USB" from Developer Option of your device.
That's all
The Best what I found devices without mobile data in device is to SIGN_OUT from MI_Account in the device and Login Again -> Try to enable USB_Debugging(Security Setting)-> enable INSTALL_VIA_USB
i had same problem with MI Redmi 4a i solved it by ->
first become a developer by clicking on
setting->About phone->MIUI version (7-8 times)
then, setting->additional setting->developer options->USB debugging
Turn on your usb debugging, then in developer options go for last item name is 'Turn on MIUI optimization', turn off this option it will ask for reboot , then reboot device by clicking Turn off & reboot button
after reboot go to Setting->Permissions click on top right menu button Turn on install via USB option
thats it !
These steps worked for me after struggling 1 hour, Not needed to connect to Chinese server.
(1) Turn Off your Wi-Fi
(2) Turn Off your Mobile Data
(3) Turn On "Install via USB" from Developer Option of your device.
4) It will show the Error "No network found"
5) Now Turn On your Mobile Data
6) Again Turn on "Install via USB"
7) it will work, now
Happy!
In MIUI 8.5 it gives the error like you mention while enabling "install via USB", to resolve the error you need to make WIFI off and make mobile data on and then enable the option “Install via USB”. it will work for you.
A detailed blog: http://sforsuresh.in/xiaomi-mi-note-4-install-via-usb-device-temporarily-restricted/
You will need to sign up/sign in for a Mi account before you continue.
1) Extract sim card from your non-Redmi phone. (It should be nano sim. Contact your telecom provider to get one if you have a micro or normal sim).
2) Insert sim card into Redmi phone.
3) Go to Settings -> Additional Settings -> Developer options.
4) Under Debugging, click on 'Install via USB' option.
The phone will enable this.
Remove the sim card.
That's it!! You should now be able to install your apps via USB from Android studio.
Please remember not to disable this option, otherwise, you may need to re-insert your sim card.
PLEASE NOTE: The above steps are guaranteed to work in Xiaomi Redmi 5 phone. Please improve this answer if the steps are different for other models of Xiaomi.
Disable WiFi and switch install via USB on while you are connected through data and under your xiaomi account. It works!
In my case,
I turned on Airplane mode and
turn it off then
turn off Wifi and
turn on mobile data.
Now I can turn on install via USB.
May it helps some one like me.
Please verify your email and phone number in Mi account first then try this:
Settings -> Additional Settings -> Developer options -> Turn off Miui Optimizations -> Restart
Security -> Permissions -> Gear Icon at top right corner -> Turn On "Install via USB"
Settings -> Additional Settings -> Developer options -> Turn On/Off "USB Debugging" -> Turn On "Install vis USB"
Redmi Note 4 (Nougat 7.0, MIUI 9)
For me, options like Turning WiFi off & on, trying on Data Network, or Turning off MIUI Optimization din't work.
Also, the Install via USB never got enabled.
Following steps helped me to install apps via USB
Additional Settings > Developer Options
Here, click on USB Debugging (Security Settings). This will take you through some warning screens. Allow (click on Next/Accept) for all. At the end, it will be enabled.
Now turn on the Install via USB and it gets enabled.
Try to Run the app by connecting your device. If it still doesn't run (as in my case), find Select USB Configuration and select Charging
This worked for me.
Solution with NO VPNing that worked for me:
go to Settings->Accounts->MiAccount->AccountSecurity->Devices
I had a Redmi 9 device listed there (I don't own a Redmi device)
I removed that Device, so now no devices were listed
go back to developer settings, enable install via USB, everything works.
I assume not everyone will have a Redmi device listed there, maybe some will have a different device, maybe some will even have the correct device(this is not something I can test by myself), but it makes sense to me that correcting any wrong devices from that list (or maybe deleting all devices like I did) might fix the problem.
I got this problem in my Xiaomi Mi5 from India. All the mentioned solutions didn't work in my case. Then I tried to figure out the Core reason behind it and solve it. In MIUI, in order to change "Install via USB" option, you must be connected to the internet and signed in your Mi account. Due to some reason, requests from out of the China servers are getting rejected, so I connected to one open China VPN and tried again to enable 'Install via USB' and I got success. For detailed solution and VPN details, see this useful Youtube video: https://youtu.be/MeKUJlD-Ke4
I will write what worked for me, these other solutions did not work out.
switch "Install via USB" to ON,
When the dialog box "Allowing" appear, quick tap your screen out of the dialog box.
Repeat it until u see that "Install via USB" is ON.
After u see "Install Via USB" is ON, you need to re-checking by pressing back button and go to developer option again.
This worked for me. Thanks.
I had this issue on my Redmi Note 4 with MIUI 9. For me the procedure is very simple.
1. Go to Settings -> Permissions -> Gear icon at top right corner.
2. Give the required permission for Install via USB.
3. Goto Developer Options and try using Install via USB. It will work now.
This process is for one time. I hope you have resolved this issue too.
Faced same problem with Xiaomi Mi5 MUI9.
Turning on/off connections or MUI optimization did not work for me.
What worked is:
Settings -> Additional Settings -> Privacy -> enable Unknown sources
In my case when i updated MIUI version to the new available version, resolved the issue.
So check if there is any update available for your device, go to
Settings => About phone => System update
=> here it will shows you the new available MIUI version for your device. So update it then try again.
Note: Turn your Mobile data before enabling install via USB.
In my case, I connect to Chinese VPN, then I turn on install via USB and its work.
I had the exact same problem, tried all the suggested workarounds, but none of them worked for me. Strangely enough, what actually has worked for me was turning on MIUI optimization (it was turned off when the problem occurred)! After turning it on, I was able to toggle on install via USB.
This worked for me:
Go to settings-> Mi Account->Account security
Then verify phone and email, If not added then add and verify that
I tried everything to no result, then read somewhere that you should use VPN and connect under China to unlock your phone's bootloader. Applied the same solution here and it worked!
If turning your Wi-Fi off is not working for you, then you might have not yet registered your MIUI account as a developer account.
To do so go to MIUI Dev center and register your already created account. After the review process this should not be bugging you anymore.
But remember as other have noted to:
Turn off Wi-Fi connection
Turn on mobile connection
In my case,I was using my phone that is Redmi 4 and the usb debugging was not working.It was always giving the message "the device is temporarily restricted" .I have tried all this steps but the result was same.Then I found the foolish thing that I have put the device in charging mode only.When I switch to MTP(Transfer files) and then it started working correctly.I know its a foolish thing but it may help to someone.
if you have root you can force it with adb shell
adb shell
su
setprop persist.security.adbinput 1
Above solutions doesn't work for me. In my case it works by changing Additional settings -> Region to Russia/Some other country.
For me, on Redmi 3s prime with MIUI 9.2, enabling MIUI optimisation on developer menu worked. It caused phone to restart.
I have LG Optimus L70, the system stopped working suddenly.
The problem was that the bootloader is corrupt, so I have to install a new one.
In order to do that, it would be easier to enable USB debugging mode, but the problem is:
When ever I check USB Debugging the phone vibrates indicating that it is connected to PC, when i go to Device Manager on windows, it showed that the device is connected as Single ADB Interface.
The key problem that the phone's system is corrupt even after hard resetting it, so no pop up is shown, so, no RSA authorizing pop up is shown.
How can I automatically accept RSA? or make my device usable in ADB at least?
I have tried all other posts mentioned here in stackoverflow, but non of them seems to solve the problem.
Settings -> Developer -> Revoke authorizations usb debugging
I am trying out this adb shell procedure to store all my android apps to the SD Card on my new samsung galaxy tab 4.i have tried the following shell command on my laptop while staying connected with my tab via usb cable and it showed me an error.i am attaching the screenshot here.it keeps on saying "Device Unauthorized".how can i resolve this?
Your device is unauthorized. This means that you either have USB debugging off, or the adb server has messed up.
If you have the USB debugging on, try to revoke the USB debugging and restart the adb server, as suggested in
https://stackoverflow.com/a/25546300/3970830
After connecting the device, you have to accept the connection in the dialog on the device screen.
The error message is giving you the solution. Check your device for a confirmation dialog. It should be asking you to authorize the computer to connect, or something to that effect.
I've been attempting to debug my android wear app via bluetooth and have been running into a few problems. The main problem is that I'll successfully be running the app and debugging via bluetooth when the connection fails. After the pipe is broken nothing I do seems to get the connection back outside of switching phones. This is obviously not a workable solution, so I was wondering if anyone else had run into any similar problems.
After trying all the steps in #Alex Sulivan's answer, I also tried another suggestion from here which was suggested for devs who have previously connected to an emulator.
open Android wear companion app
Go to Settings Click on Emulator
Click 'FORGET WATCH'
This didn't work either!
Finally, changing the last adb command to
adb connect 127.0.0.1:4444
did the job.
Having done all of the steps, I don't know how many were required.
I've reached some degree of success by re-setting everything and following the developer guide again to setting up bluetooth.
Turn bluetooth debugging off on wear device
Turn ADB debugging off on wear device
Revoke debugging authorization on wear device (not sure if necessary)
Turn bluetooth debugging off on wear app on handheld
kill the adb server (adb kill-server)
Restart adb server (adb server restart)
Turn ADB debugging on on wear device
Turn bluetooth debugging on on wear device
Turn bluetooth debugging on on wear app on handheld
enter adb forwarding commands:
adb forward tcp:4444 localabstract:/adb-hub
adb connect localhost:4444
Pray
These steps have mostly worked for me.
Debugging over Bluetooth was always Off for me. Apparently I had to choose a debugging wearable device here:
Android Wear -> Settings (gear icon) -> Debugging over Bluetooth -> Device to Debug
Then all other comments are helpful too.
I have made a mistake somewhere in my code that my Android app crashes when I switch off the network in the emulator while the app's HTTPClient is making some request.
But I cannot debug it, because when I switched off the network, I also lost the ADB connection. Thus I cannot see what exception is causing the crash.
I have tried switching off the network by:
F8
Set 'Data' to 'Unregistered' or 'Denied' in DDMS Emulator Control
I can put my Mac offline and ADB will stay up, but unfortunately I cannot reproduce the crash that way.
Is there a way to turn off network in the emulator, while keeping ADB alive? I basically need access to the LogCat entries.
Thanks!
You can run logcat from the device instead of from ADB and redirect it to a file for offline reading.
adb shell logcat [-v threadtime] > /sdcard/mylogs/logcat.log
Instead of
adb logcat [-v threadtime]
Then you can get the file when you reconnect to the device.
On linux this is pretty simple with iptables firewall. I suppose you trying to debug api calls so just block api host:
iptables -I OUTPUT -d api.example.com -j DROP
Sure you can do the same thing with Mac or Windows firewall.
You could always put the device into airplane mode, that will still allow you to connect over adb but not give the emulator a connection to the internet. You can also turn off data through eclipse via the emulator control section in ddms by putting in unregistered/denied to the data drop down.
I know this is old question but someone might use find for this.
My setup
Eclipse Kepler with emulated android 4.4
If you want to keep your adb alive and network turned off, you can try this.
Start emulated device
Activate flight/airplane mode
Restart Eclipse
It should work! Check DDMS perspective for attached devices or use adb devices command