web-dev-qa-db-ja.com

Android:APKのインストール中にエラーが発生しました

私はゆっくりといくつかの簡単なタスクをAndroid Studioでやろうとしています。次のアプリはエラーなしでエミュレータにインストールされます。しかし、私が実際のデバイスRedmi 3Sにそれをインストールしようとしたとき、このエラーが発生しました:

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

私はここで同様の質問をしましたが、これらのケースでは、エラーはデバッグが有効になっていないか、またはアプリのインストールを受け入れていないことが原因でした。しかし、私はデバッグを許可していて、私は他のアプリをStudioにインストールしようとしました---そしてそれはうまく動いた

そのため、おそらくコードに問題があるのでしょうか。

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();
    }
}

そして、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>
52
Lucie P.

問題を克服するためにこれらのステップに従ってください。

  1. システムに接続されているすべてのデバイスを取り外し、システム上で動作しているすべてのエミュレータを閉じます。
  2. インスタントラン機能を設定からオフにします。
  3. クリーンビルドを実行します。
  4. 設定からインスタントラン機能をオンにします。
  5. クリーンビルドを実行します。
  6. デバイスを接続してエミュレータを起動し、オンラインになっていることを確認します。
  7. デバイス/エミュレータを選択してプロジェクトを実行します。

注:

1)システム上でAndroid Debug Bridge(adb)の異なるインスタンスを実行してはいけません。

2)Genymotionを使用している場合は、Android Studioの設定でGenymotion設定に記載されているカスタムSDKパスを必ず使用してください。

これらのステップはあなたの問題を解決する可能性が高いですが、それはまたAndroidバージョンの問題かもしれません。

105
JPZ

Android Studioのインスタントランをオフにします。以下の手順に従ってください。

  1. ファイル>>設定>>ビルド、実行、配置。

  2. インスタントランをクリックし、 "インスタントランを有効にしてデプロイ時にコード/リソースの変更をホットスワップする "#:。

  3. 適用」と「OK」をクリックしてください。

アプリケーションをもう一度実行してください。今すぐアプリをインストールする必要があります。いつでもインスタントランを再度有効にすることができます。

編集(アンドロイドスタジオ3.0)

インスタントランを無効にする( Android Document

インスタントランを無効にするには:

  1. 設定または設定ダイアログを開きます。 (Macの場合、Android Studio - >設定
  2. ビルド、実行、配置>インスタントランに移動します。
  3. インスタントランを有効にするの横のチェックボックスをオフにします。
49
Animesh Patra

RedmiおよびMiデバイスの場合、MIUI Optimizationをオフにして電話機を再起動します。

設定>追加設定>開発者向けオプション> MIUI最適化

ここで答えをチェックしてください

8
Mahesh Cheliya

私のために私はちょうどアプリのためのきれいなを作った、そしてすべてがうまくいく。

8
Mohammed Salim

上記のすべての提案を試す前に、デバイスで利用可能な十分なメモリスペースを確認してください。これもこの問題の原因となります。

Error:Android.os.ParcelableException:Java.io.IOException:内部でのみ要求されましたが、十分なスペースがありません

ハッピーコーディング:)

4
happy_Coding

私は今、この問題に直面しています、私はすでにapkをアンインストールしました、今私はXiaomi MIX 2(Android 7.1.1、API 25)にapkを実行したいのですが、Android Studio 3.0を使います。

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

そして、Android Studioは私に「この問題はapkの既存のバージョンがあればそれをアンインストールしてから再インストールすることで解決できる可能性があります」と言っています。しかし、私はこのAPKをアンインストールしました。

Android Studio popup info

そして[OK]ボタンをクリックしましたが失敗しました。

$ adb Shell pm uninstall com.package
Unknown failure (at Android.os.Binder.execTransact(Binder.Java:565))
Error while Installing APK

そして最後に私はこの問題を解決する方法を見つけます、あなたがxiaomiアカウントにログインするまで今この装置はそれをつけることができないので、私は「USB上のアプリの確認」をつける。

ステップ1:「設定」に移動→システム内の「開発者向けオプション」を見つけてクリックします。

ステップ2:Debbugingセクションの「USBでアプリを検証する」をオンにします。

ステップ3:Android Studioで「Run app」をもう一度試してください。

4
Smiles

Androidスタジオバージョン2.3およびグラドルプラグインバージョン2.3.0のインスタントランがXiaomiデバイスと互換性がある可能性があります。

adb multiple-install分割されたapksはエラーを返します。

インスタントランをオフにすることも、インスタントランもしたい場合はSettings - > Developer optionsTurn on MIUI optimizationをオフに切り替えることができます。

3
alijandro

私はプロジェクトをきれいにしてこの問題を修正していました。

ビルド - >プロジェクトのクリーン。

1
ssowri1

デバイスのストレージがいっぱいになっている可能性があります。物理デバイスでテストしている場合ただし、エミュレータでテストしている場合は、そこにストレージスペースがあるかどうかも確認してください。それ以外の場合は、インスタントランをオフにする必要があります。

1
GauRav MisHra

シンプルでストレートな答え.

以下のようにInstant Runのチェックを外します...

ステップ:ファイル>>設定>>ビルド、実行、展開>>展開時にインスタントランを有効にしてコード/リソースの変更をホットスワップする(デフォルトは有効)のチェックを外します。 enter image description here

ステップ2:適用して[Ok をクリックします)enter image description here

ステップ3:プロジェクトを実行する.

確かに働きなさい…@ Ambilpura

私は同じ問題を抱えていたが、私の問題はデバイス上のスペースの不足でした。

これを試してみてくださいあなたのデバイス上で設定 - >デバイスのメンテナンス - >今すぐ最適化に行きます。

それが終わったら、やり直してください。

0
Catalin

あなたがデバイス上のすべてのあなたのアプリケーションを削除することができれば。私はAndroid Emulatorを使用しています。アプリを経由して削除しました。

設定>アプリと通知>アプリを選択>アンインストール

0
yusuf

Android Studioのインスタントランをオフにします。以下の手順に従ってください

  • 旧バージョンのAndroid Studio(Version < Android Studio 3.0)の場合>>ファイル>>設定>>ビルド、実行、配置。

  • Instant Runをクリックし、すべてのEnable Instant Run to hot swap code/resource changes on deployのチェックを外します。

  • クリック Apply そして OK

  • アプリケーションをもう一度実行してください。今すぐアプリをインストールする必要があります。いつでもInstant Runを再度有効にすることができます。

  • 新規の場合(Android Studio 3.0)インスタントランを無効にする(デフォルト)

インスタントランを無効にするには

  • SettingsまたはPreferences dialogを開きます。 (Mac、Android Studio - >設定)

  • Build, Execution, Deployment > Instant Runに移動します。

  • [インスタントランを有効にする]の横のチェックボックスをオフにします。

  • プロジェクトをクリーンにして、アプリケーションをもう一度実行してください。今すぐアプリをinstallする必要があります。いつでもenable Instant Runを再登録することができます。

0

新しいデバイスにアプリをインストールしたときにも同じ問題が発生しました。このエラーは通常、アプリのインストールがOSによって許可されていない場合に発生します。これは、あなたが自分の携帯電話にアプリをインストールする権限を持っていない可能性があるためです。

開発者向けオプションでallow install apps via usbをチェックしてみてください。これでうまくいかない場合は、すべてのusb debugging authorizationsを無効にしてからインストールを試み、要求されたら許可を与えます。

これでもうまくいかない場合は、上記の回答の1つで説明したようにインスタントランを無効にしてみてください。

0
arnav

切断 the デバイスシステム内およびAndroidスタジオに移動ファイル = - > キャッシュを無効にして/ Restart。できます....

0
VAIBHAV NERLE

この手順に従って Instant Run を再確認することができます。

  1. ファイル>>設定>>ビルド、実行、配置。
  2. [インスタントラン]をクリックして、[展開時にインスタントランを有効にしてコード/リソースの変更をホットスワップする]のチェックを外します。
  3. 「適用」と「OK」をクリックしてください。

しかし時には再チェックがうまくいかないことがあります。

その時WIN PCで展開を実行する場合は、一時的に AntiVirus およびWindows Defenderを無効にする必要があります

次の手順に従ってください:

  1. アンチウイルスまたはWindows Defenderを15分30秒無効にする
  2. クリーンビルドを実行します。
  3. プロジェクトを再構築
  4. エミュレータまたはデバイスでプロジェクトを実行します。

注:

  • \ app\build\intermediate\split-apk\debug\slices\slice_5.apkは、いくつかのマルウェアに感染します。
0
Eshan Chattaraj