2017-03-14 64 views
14

Tôi đang cố gắng thực hiện một số tác vụ đơn giản trong Android Studio. Ứng dụng sau được cài đặt trên trình mô phỏng mà không có bất kỳ lỗi nào. Nhưng khi tôi đã cố gắng để cài đặt nó trên một thiết bị thực redmi 3S lỗi này xảy ra:Android: Lỗi khi cài đặt APK

Unknown failure (Failure - not installed for 0) 
Error while Installing APKs 

Tôi đã trải qua những câu hỏi tương tự như quanh đây nhưng trong những trường hợp này lỗi là do không được kích hoạt gỡ lỗi, hoặc không accepitng instalation ứng dụng . Tuy nhiên, tôi đã cho phép gỡ lỗi và tôi cũng đã cố cài đặt một số ứng dụng khác trong Studio và nó hoạt động tốt.

Vì vậy, câu hỏi có thể là, có gì sai với mã.

MainActivity.java

package tlacitko.button; 
import android.support.v7.app.AppCompatActivity; 
import android.os.Bundle; 
import android.view.View; 
import java.io.BufferedReader; 
import java.io.IOException; 
import java.io.InputStream; 
import java.io.InputStreamReader; 
import java.net.MalformedURLException; 
import java.net.URL; 

public class MainActivity extends AppCompatActivity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
    } 

    public void sendMessage(View view) { 
     new Thread(new Runnable() { 
      public void run() { 

       runOnUiThread(new Runnable() { 
        @Override 
        public void run() { 
         try{ 
          URL url = new URL("http://147.32.186.51:8080"); 
          // HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection(); 
          InputStream is = url.openStream(); 
          BufferedReader br = new BufferedReader(new 
            InputStreamReader(is)); 
          String s = ""; 
         }catch(MalformedURLException ex){ 

         }catch(IOException e){ 
         } 
        } 
       }); 
      } 
     }).start(); 
    } 
} 

Và mã xml:

activity_main.xml

<TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Try to connect the server." 
     app:layout_constraintBottom_toBottomOf="parent" 
     app:layout_constraintLeft_toLeftOf="parent" 
     app:layout_constraintRight_toRightOf="parent" 
     app:layout_constraintTop_toTopOf="parent" /> 

    <Button 
     android:id="@+id/button" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginLeft="16dp" 
     android:layout_marginRight="7dp" 
     android:layout_marginTop="16dp" 
     android:onClick="sendMessage" 
     android:text="Conncect" 
     app:layout_constraintLeft_toRightOf="@+id/editText" 
     app:layout_constraintRight_toRightOf="parent" 
     app:layout_constraintTop_toTopOf="parent" /> 


</android.support.constraint.ConstraintLayout> 
+0

Vui lòng kiểm tra, có bất kỳ ứng dụng nào có cùng tên gói, nếu có, vui lòng gỡ cài đặt và thử lại. –

+0

Xây dựng lại và Chạy – asissuthar

+0

@ShantoGeorge Không có ứng dụng nào có cùng tên. –

Trả lời

35

Làm theo các bước sau để khắc phục sự cố.

Ngắt kết nối tất cả các thiết bị được kết nối với Hệ thống/Đóng tất cả các trình mô phỏng đang chạy trên Hệ thống. Tắt tính năng Chạy tức thì từ cài đặt. Thực hiện xây dựng sạch sẽ. BẬT tính năng Chạy tức thì từ cài đặt. Thực hiện xây dựng sạch sẽ. Kết nối thiết bị của bạn/khởi động Trình giả lập của bạn và đảm bảo nó đang trực tuyến. Chạy Dự án bằng cách chọn thiết bị/trình mô phỏng. LƯU Ý: -

1) Bạn không nên có các phiên bản khác nhau của Android Debug Bridge (adb) đang chạy trên hệ thống.

2) Nếu sử dụng Genymotion thì hãy đảm bảo rằng bạn sử dụng đường dẫn sdk tùy chỉnh được đề cập trong cài đặt Genymotion mà bạn đã đề cập trong cài đặt của Android Studio.

Làm theo tất cả các bước và tôi chắc chắn bạn sẽ khắc phục sự cố.

hoặc có thể kiểm tra xem ứng dụng của bạn có tương thích với phiên bản Android nào không.

+1

Cảm ơn bạn rất nhiều, nó đã được gây ra bởi ** Chạy ngay ** –

+0

không lo lắng giao phối :) – JPZ

+2

Làm việc cho tôi. "Lỗi không xác định" của tôi là "tại android.os.Binder.execTransact" được cài đặt là "Không - không được cài đặt cho 0". –

2

Có thể là khả năng tương thích với thiết bị Xiaomi dành cho phiên bản Android 2.3 và phiên bản plugin gradle 2.3.0 có bật ngay lập tức.

adb multiple-install lỗi trả về được chia nhỏ.

Bạn có thể tắt chạy ngay lập tức hoặc trong Settings ->Developer options, tắt Turn on MIUI optimization tắt nếu bạn muốn chạy ngay lập tức.

3

Đối với các thiết bị Redmi và Mi tắt MIUI Tối ưu hóa và khởi động lại điện thoại của bạn.

Cài đặt> Cài đặt bổ sung> Tùy chọn nhà phát triển> MIUI Tối ưu hóa

Check Answer here

21

Tắt Instant Chạy trong Android Studio. Thực hiện theo các bước bên dưới:

  1. Tệp >> Cài đặt >> Xây dựng, thực thi, triển khai.

  2. Bấm vào Run tức thì và unckeck "Enable Run tức thì để trao đổi nóng thay đổi mã/tài nguyên trên triển khai".

  3. Nhấp vào "Áp dụng" và "OK".

Thử chạy lại ứng dụng. Nó sẽ cài đặt ứng dụng ngay bây giờ. Bạn có thể bật lại Chạy tức thì bất cứ lúc nào.

+3

Điều này giải quyết được vấn đề cho tôi, thông báo lỗi gốc trong Android Studio là 'Lỗi không xác định (tại android.os.Binder.execTransact (Binder.java WEBC65)' –

+0

Giúp tôi, cảm ơn! – Jviaches

1

Tôi hiện đang gặp phải sự cố này, tôi đã gỡ cài đặt gói ứng dụng, bây giờ tôi sử dụng Android Studio 3.0 muốn chạy apk đến Xiaomi MIX 2 (Android 7.1.1, API 25), nhưng không thành công.

$ adb shell pm install -t -r "/data/local/tmp/com.package" 
Failure [INSTALL_FAILED_USER_RESTRICTED: Install canceled by user] 

Android Studio cho biết "Có thể sự cố này đã được giải quyết bằng cách gỡ cài đặt phiên bản hiện tại của gói ứng dụng nếu có, sau đó cài đặt lại." nhưng tôi đã gỡ cài đặt gói ứng dụng này.

Android Studio popup info

Và tôi nhấp vào nút "OK" nhưng cũng không thành công.

$ adb shell pm uninstall com.package 
Unknown failure (at android.os.Binder.execTransact(Binder.java:565)) 
Error while Installing APK 

Và cuối cùng tôi tìm cách giải quyết vấn đề này, tôi không bật "Xác minh ứng dụng trên USB", vì bây giờ thiết bị này không thể bật nó cho đến khi bạn đăng nhập tài khoản của Xiaomi, và đây là một thiết bị mới chưa được đăng nhập.

Bước 1: Chuyển đến “Cài đặt” → tìm “Tùy chọn nhà phát triển” trong Hệ thống và nhấp.

Bước 2: BẬT “Xác minh ứng dụng qua USB” trong phần Gỡ lỗi.

Bước 3: Thử "Chạy ứng dụng" trong Android Studio một lần nữa!

1

Bạn cần tắt Tối ưu hóa MIUI từ tùy chọn nhà phát triển cho thiết bị Mi để chạy các ứng dụng Android.

1

Đối với tôi, tôi chỉ cần thực hiện sạch cho Ứng dụng thì mọi thứ hoạt động tốt.

Các vấn đề liên quan