Este problema me sucedió de un día para otro cuando quise hacer commit and push desde Visual Studio me pedía mis credenciales de Bitbucket, pero no las aceptaba a pesar de comprobarlas iniciando sesión directamente en web, siempre había trabajado de la misma manera y sin ningún problema hasta ahora, estos son los errores que me aparecían.
En la ventana de Team Explorer
En la ventana Output
Incluso en la consola de comandos
Probé todas las soluciones que ofrece el internet
Borrar las credenciales desde el Panel de Control
Borrar la carpeta Git de TeamFoundation\Team Explorer en la carpeta de instalación de Visual Studio
Cambie el usuario y contraseña de Bitbucket
Crear un proyecto nuevo para clonar el repositorio
Entre otras cosas, pero nada de esto funcionó, me di cuenta que el problema no estaba en la computadora sino en la cuenta de Bitbucket directamente
Solución
La solución fue crear una contraseña de aplicación en Bitbucket, en Personal Settings
Yo marqué todas las opciones, en Label le puse Git (“prueba” para este ejemplo) para identificarla
Te genera una contraseña y con el mismo usuario la puse en Visual Studio y ya se pudo conectar
Se pudo hacer push y sincronizar las ramas nuevas como siempre
Error al correr aplicación en celular desde Android Studio, molesto error que al parecer aparece en celulares Xiaomi y/o con sistema MIUI
Error:
Failed to commit install session 309689147 with command cmd package install-commit 309689147. Error: INSTALL_FAILED_USER_RESTRICTED: Install canceled by user
Error Installation did not succeed.
The application could not be installed: INSTALL_FAILED_USER_RESTRICTED
Retry
Session 'app': Installation did not succeed.
The application could not be installed: INSTALL_FAILED_USER_RESTRICTED
Retry
Solución:
La solución es muy sencilla solo hay que activar la opción Instalar vía USB en las opciones de desarrollador del teléfono, junto a la Depuración USB
Solución 2:
05/20 09:45:36: Launching 'app' on Physical Device.
Installation did not succeed.
The application could not be installed: INSTALL_FAILED_USER_RESTRICTED
List of apks:
[0] 'D:\Documentos\DESARROLLO\ANDROID\Random\app\build\outputs\apk\debug\app-debug.apk'
Installation via USB is disabled.
Retry
Si ya está activa la configuración Instalar vía USB y el error está sucediendo a causa de una actualización del SO del teléfono entonces podemos desactivar la optimización MIUI, esto hará que nos pregunte de nuevo si permitimos la depuración por USB, entonces aceptamos.
Desactivar la Optimización MIUI
Casi al final de las Opciones de desarrollador encontraremos la opción Restablecer valores predeterminados
Presionamos varias veces hasta que aparezca debajo la configuración Activar optimización MIUI y la desactivamos
Aceptamos la advertencia
En mi caso el teléfono me pregunto si permito la depuración por USB nuevamente
*Pero después volví a activar la optimización MIUI y ya no apareció el error lo que nos lleva a la Solución 3.
Solución 3:
05/20 09:45:36: Launching 'app' on Physical Device.
Installation did not succeed.
The application could not be installed: INSTALL_FAILED_USER_RESTRICTED
List of apks:
[0] 'D:\Documentos\DESARROLLO\ANDROID\Random\app\build\outputs\apk\debug\app-debug.apk'
Installation via USB is disabled.
Retry
Puede ser que debido a una actualización de Android como del sistema MIUI nos aparezca este error y que solamente necesitemos desvincular el teléfono de la depuración por USB y activarla de nuevo
No es preciso saber si una computadora esta conectada a Internet con C# pero podemos saber si efectivamente se realizo la conexión a un sitio especifico y deducir si la computadora esta efectivamente conectada o no.
Podemos verificar un par de cosas que si bien no nos aseguran que se realice una conexión efectiva si pueden ayudarnos a verificarla.
Primero podemos revisar la conexión a la Red local, si no esta conectada entonces no hay Internet, de lo contrario solo podemos asegurar que esté conectada al módem por ejemplo mas no que tenga salida a Internet.
string Estado = "";
bool RedActiva = System.Net.NetworkInformation.NetworkInterface.GetIsNetworkAvailable();
if (RedActiva)
Estado = "Se estableció conexión con la red local";
else
Estado = "No está conectado a la red";
Ahora si estamos conectados a la Red podemos enviar un ping a una pagina en Internet para asegurar la conexión.
string Estado = "";
System.Uri Url = new System.Uri("https://www.google.com/");
System.Net.WebRequest WebRequest;
WebRequest = System.Net.WebRequest.Create(Url);
System.Net.WebResponse objetoResp;
try
{
objetoResp = WebRequest.GetResponse();
Estado = "Se establecio conexión a internet corretamente.";
objetoResp.Close();
}catch (Exception e)
{
Estado = "No se pudo conectar a Internet " + e.Message;
}
WebRequest = null;
Si se realiza correctamente podemos asegurar que si hay conexión, de lo contrario tenemos que esperar a que entre al catch y eso puede tardar unos segundos.
No se puede hacer conexión con todos los sitios por la configuración de cada uno de ellos, con google.com si se puede y es el que mas se usa para estos casos, de lo contrario puede arrojar un mensaje como este
Vamos a crear una DataTable y agregarle columnas y filas manualmente
Primero declaramos la Tabla, la Columna y la Fila
DataTable tabla = new DataTable();
// Variables para las columnas y las filas
DataColumn column;
DataRow row;
Construimos la primera Columna asignándole Nombre y Tipo de datos y la agregamos a la Tabla
// Se tiene que crear primero la columna asignandole Nombre y Tipo de datos
column = new DataColumn();
column.DataType = System.Type.GetType("System.Int32");
column.ColumnName = "Codigo";
tabla.Columns.Add(column);
Tenemos que hacer lo mismo por cada Columna que queramos agregar
// Se tienen que crear todas las columnas que queramos
column = new DataColumn();
column.DataType = Type.GetType("System.String");
column.ColumnName = "Descripcion";
tabla.Columns.Add(column);
column = new DataColumn();
column.DataType = Type.GetType("System.Decimal");
column.ColumnName = "ValorUnitario";
tabla.Columns.Add(column);
Ahora agregamos los registros a nuestra Tabla, para eso creamos una Fila que tenga relación con la Tabla y por cada Columna llenamos los valores que queramos y por ultimo agregamos la Fila a la Tabla
// Se crea una fila por cada registro que necesitemos agregar
for (int i = 1; i < 11; i++)
{
row = tabla.NewRow();
row["Codigo"] = i;
row["Descripcion"] = "Nombre del codigo " + i.ToString();
row["ValorUnitario"] = i * 2;
tabla.Rows.Add(row);
}
Este es el resultado
Así queda el código completo
DataTable tabla = new DataTable();
// Variables para las columnas y las filas
DataColumn column;
DataRow row;
// Se tiene que crear primero la columna asignandole Nombre y Tipo de datos
column = new DataColumn();
column.DataType = System.Type.GetType("System.Int32");
column.ColumnName = "Codigo";
tabla.Columns.Add(column);
// Se tienen que crear todas las columnas que queramos
column = new DataColumn();
column.DataType = Type.GetType("System.String");
column.ColumnName = "Descripcion";
tabla.Columns.Add(column);
column = new DataColumn();
column.DataType = Type.GetType("System.Decimal");
column.ColumnName = "ValorUnitario";
tabla.Columns.Add(column);
// Se crea una fila por cada registro que necesitemos agregar
for (int i = 1; i < 11; i++)
{
row = tabla.NewRow();
row["Codigo"] = i;
row["Descripcion"] = "Nombre del codigo " + i.ToString();
row["ValorUnitario"] = i * 2;
tabla.Rows.Add(row);
}
Te enseñamos a poner enlaces en Instagram, imagino que ya has buscado hasta el cansancio la manera de poner enlaces en tus publicaciones de Instagram sin tener más resultado que poner el enlace escrito en texto plano sin ninguna función, esto funciona hasta cierto punto en nuestros seguidores que nos están viendo desde un navegador en una computadora.
Pero seamos honestos la gran mayoría de usuarios de Instagram lo consultan desde sus teléfonos inteligentes por lo que el proceso de copiar el texto y abrirlo en el navegador es un tanto complicado.
Desafortunadamente Instagram no permite poner enlaces directamente en las publicaciones y sabemos que el único enlace funcional es el de la biografía, pues con eso es suficiente.
Vamos a crear una pagina gratis con Google Sites en la que podemos poner botones o imágenes con los enlaces a donde quieras y puedes poner los que tu quieras y poner el enlace en nuestra biografía.
Crear el sitio
Lo primero es tener nuestra cuenta de Google y estar logueados.
Ahora crearemos un nuevo sitio para poder publicarlo, hay dos formas sencillas de crearlo.
La primera se hace yendo a las aplicaciones de Google (en los puntitos). Seleccionando Más y después Aún más de Google, siguiendo para abajo del scroll hasta llegar a donde dice Conoce todos los productos y seleccionar Google Sites.
La segunda se hace entrando en Google Drive directamente y Crear nuevo > Más > Google Sites.
Una vez que se haya creado el sitio nos aparecerá de la siguiente manera por defecto.
Primero vamos a modificar el título que es el que aparece en el título del navegador (en las pestañitas), después en Encabezado, podemos poner una imagen de fondo, la que nosotros queramos, en este caso dejaré sólo el título para que no tarde mucho en cargar.
Como podemos ver, la estructura se maneja por bloques y para lo que queremos hacer que es una galería de imágenes con enlaces hacia nuestras entradas o vídeos. El que mejor se acomoda o que se ve más cómodo es el diseño de tres columnas y ese lo arrastramos a nuestro sitio.
Sólo queremos las imágenes pues le quitamos el título y descripción de cada columna, para eso solamente le damos clic y en las opciones que nos aparece seleccionamos el cesto de basura.
Ahora agregamos las imágenes que queremos que aparezcan seleccionando el icono del centro que nos muestra unas opciones de los elementos que podemos agregar incluyendo vídeos, mapas, calendarios y documentos de Google Drive, nosotros elegimos la opción de subir y seleccionamos la imagen de nuestra computadora.
Si la imágen no es cuadrada se hará un recorte para que puedan cuadrar las dimensiones con la altura del elemento del sitio, para que la imágen quede con las dimensiones correctas al elegir el elemento con la imágen la opción que dice Anular Recorte (Cuadrado Punteado).
Para agregar el enlace se hace seleccionando la imagen y pinchando en la opción Insertar enlace, la que nos permite agregar la dirección que queramos.
Hasta éste momento tenemos nuestro sitio en el editor, para ver el resultado final tenemos el botón de Vista previa, que nos muestra precisamente el resultado final, tanto en web, tablet y smartphone pero aún sin que el sitio esté publicado.
Si lo prefieres en lugar de poner imágenes también puedes poner botones con el nombre y el enlace que quieras.
Una vez que creamos que hemos terminado pues solamente nos queda el publicar el sitio ya que hasta ahora solo lo tenemos el archivo editable, bueno para eso tenemos el botón Publicar.
Tenemos que llenar algunas configuraciones para que eso suceda.
Dirección web: elegimos la dirección con la que queremos que se encuentre nuestro sitio en Internet, claro que después de la ruta de sitios de Google por ser un servicio gratuito.
Se puede utilizar una URL personalizada aunque tienes que demostrar propiedad del dominio.
También puedes gestionar quién puede ver tu sitio, en este caso lo dejamos tal como esta, para que cualquier usuario pueda verlo.
Por último podemos solicitar que los buscadores NO indexen nuestro sitio, lo dejaremos sin marcar para que pueda ser encontrado en alguna búsqueda cualquiera que nuestro objetivo es que lo vean la mayor cantidad de personas posibles y redireccione a nuestro contenido.
Listo ahora cualquier persona con el enlace o que lo encuentre de casualidad puede ver nuestro sitio y para obtener el enlace de nuestro sitio junto al botón de Vista previa tenemos el botón que nos copia el enlace del sitio al porta papeles listo para pegarlo en nuestro perfil de Instagram.
Editar el sitio
Cuando queramos cambiar cualquier elemento de nuestro sitio solo entramos a editarlo desde Google Drive.
Realizamos los cambios, pero hay que tener en cuenta que mientras no Publiquemos los cambios no los veremos reflejados en el sitio en la URL publicada.
Cabe decir que si ya está publicado el sitio, ya no tendremos que llenar las opciones de dirección y URL, etc. Solamente con publicar y listo.
This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
Necessary cookies are absolutely essential for the website to function properly. This category only includes cookies that ensures basic functionalities and security features of the website. These cookies do not store any personal information.
Any cookies that may not be particularly necessary for the website to function and is used specifically to collect user personal data via analytics, ads, other embedded contents are termed as non-necessary cookies. It is mandatory to procure user consent prior to running these cookies on your website.