เซสชัน 'แอป': เกิดข้อผิดพลาดในการเปิดกิจกรรม


98

หลังจากอัปเดต Android Studio 2.0 ในขณะที่การสร้าง gradle เสร็จสิ้นฉันจะได้รับสิ่งนี้:

เซสชัน 'แอป': เกิดข้อผิดพลาดในการเปิดกิจกรรม

ป้องกันไม่ให้แอปเริ่มทำงาน แต่ติดตั้งอยู่ในโปรแกรมจำลองของฉัน นี่คือสิ่งที่ปรากฏขึ้นในแท็บ Run:

เกิดข้อผิดพลาดที่ไม่คาดคิดขณะดำเนินการ: am start -n "com.example.user.ypologismosmoriwn / com.example.user.ypologismosmoriwn.MainActivity" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER เกิดข้อผิดพลาดขณะเรียกใช้กิจกรรม

นี่คือรหัส:

package com.example.user.ypologismosmoriwn;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;

public class MainActivity extends AppCompatActivity {

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

เป็นเพียงกิจกรรมว่างเปล่าไม่มีอะไรเพิ่ม

และโค้ด XML เป็นเพียง Relative Layout ที่มี 4 Texts และ 3 Check Boxes

นี่คือ Logcat ที่ฉันได้รับ

ขอบคุณทุกคนที่เต็มใจช่วยเหลือ


1
คุณได้แก้ไขไฟล์รายการของคุณหรือไม่ โปรดตรวจสอบ
Mounir Elfassi


ไฟล์ Manifest ของคุณเป็นอย่างไร?
ninjahoahong

มันเป็นรายการเริ่มต้นลองดูManifest
John R.

ฉันได้แก้ไขปัญหาแล้ว (ใน Anroid watch Moto 360 ของฉัน) โดยการถอนการติดตั้งแอปก่อนติดตั้งจาก AS
Kiryl Ivanou

คำตอบ:


129

ฉันประสบปัญหานี้เช่นกันหลังจากที่ฉันอัปเดตเป็น AS2.0 ฉันพบว่าเป็นเพราะการinstant runเปิดใช้งาน ดังนั้นวิธีแก้ปัญหาของฉันคือปิดการใช้งาน "การเรียกใช้ทันที" และมันได้ผล เพื่อปิดการใช้งาน "ทำงานทันที" คุณสามารถไปที่Preference Dialog(อาจจะตั้งโต้ตอบบน Windows) จากนั้นเลือกBuild, Execution, Deployment> และยกเลิกการเลือกทั้งหมดช่องทำเครื่องหมายเพื่อปิดการใช้งานInstant RunInstant Run

นี่เป็นวิธีแก้ปัญหาชั่วคราวของฉันและอาจช่วยคุณได้ ต่อมาฉันจะหาวิธีที่ดีกว่าสำหรับปัญหานี้


อัปเดตโดย 2016/06/06

instant runทางออกที่ดีแทนการปิดการใช้งาน ลบ.ideaโฟลเดอร์และ.gradleโฟลเดอร์จากนั้นคลิกปุ่มSync Project with Gradle Files(หรือผ่านเมนูFile-> Sync Project with Gradle Files) หลังจากขั้นตอนนี้เสร็จสิ้นคุณจะสามารถเรียกใช้แอพของคุณได้ตามปกติ

ขอให้โชคดี ~


1
การปิดใช้งานการเรียกใช้ทันทีหยุดเซสชัน 'แอป': เกิดข้อผิดพลาดในการเปิดตัวกิจกรรมผิดพลาดแม้ว่าแอปจะไม่เริ่มทำงานโดยอัตโนมัติในโปรแกรมจำลอง
John R.

2
เราจำเป็นต้องลบ.ideaและจัดgradleโฟลเดอร์ก่อนการรันแต่ละครั้งหรือไม่!
VSB

1
ไม่เพียงครั้งแรก
นิค

1
ฉันเพิ่งทำการซิงโครไนซ์เพื่อแก้ปัญหานี้ กำลังทำให้ฉันคลั่งไคล้จนกระทั่งมาเจอกระทู้นี้ ในกรณีของฉันฉันได้เปลี่ยนชื่อ applicationId ก่อนหน้านี้เพื่อทำให้เกิดปัญหานี้
riper

3
หากคุณประสบปัญหานี้หลังจากติดตั้งแอพจากอุปกรณ์แอพอาจยังคงออกให้ลองตรวจสอบในการตั้งค่า -> แอพ -> ลบแอพ จากนั้นลองเรียกใช้แอป มันได้ผลสำหรับฉัน
60

53

หากคุณใช้ Android 7.0 ขึ้นไปอาจเป็นไปได้ว่าแอปนั้นได้รับการติดตั้งในสองที่ (แขกและผู้ดูแลระบบ) และคุณถอนการติดตั้งสำหรับผู้ใช้เพียงคนเดียวเท่านั้นและนั่นทำให้เกิดปัญหา

ในการแก้ไขให้ไปที่: การตั้งค่า -> แอปและการแจ้งเตือน -> ดูแอปทั้งหมด -> ค้นหาแอปที่คุณพยายามติดตั้ง

ป้อนคำอธิบายภาพที่นี่ ป้อนคำอธิบายภาพที่นี่

จากนั้นคลิกเมนูที่มุมบนขวาและเลือกถอนการติดตั้งสำหรับผู้ใช้ทั้งหมด

ป้อนคำอธิบายภาพที่นี่

เรียกใช้แอปของคุณจาก Android Studio มันควรจะใช้งานได้


ปัญหานี้อาจมีอยู่ในอุปกรณ์ Android 7.0 เช่นกัน วิธีนี้ใช้ได้ผล!
Maverick7

ปัญหานี้รบกวนฉันสองสามครั้งเมื่อเร็ว ๆ นี้ และแนวทางของคุณก็เหมือนกับแนวทางที่ฉันใช้จากmedium.com/@kaikoenig/… . ขอบคุณพระเจ้าที่ฉันพบแนวทางนี้!
Jiaheng

35

ลองติดตั้งแอปอีกครั้งซึ่งจะช่วยแก้ข้อผิดพลาดให้ฉันได้ เคล็ดลับคือฉันถอนการติดตั้งแอพของฉัน แต่ Android ไม่ได้ถอนการติดตั้งอย่างแท้จริง ในโทรศัพท์ของฉันมีผู้ใช้ทั่วไป (พี่สาวของฉันใช้เป็นบางครั้ง) หากคุณถอนการติดตั้งแอปจากผู้ใช้หลักแอปจะยังคงใช้งานได้บนโทรศัพท์ แต่สำหรับผู้ใช้ทั่วไปเท่านั้น ดูเหมือนว่า Android Studio จะไม่สามารถจัดการกับกรณีนี้ได้ ฉันเดาว่าตรวจพบว่ามีการติดตั้งแอปแล้วดังนั้นจะไม่มีการติดตั้งใหม่อีกครั้งสำหรับผู้ใช้ปัจจุบันดังนั้นระบบปฏิบัติการจึงไม่สามารถเข้าถึงและเปิดกิจกรรมได้ ข้อผิดพลาดที่ดีฉันจะรายงาน


1
นี่คือสิ่งที่ช่วยฉัน - พฤติกรรม Android ที่น่าสนใจมาก
d4c0d312

นั่นก็เป็นกรณีของฉันเช่นกันขอบคุณที่ค้นพบสิ่งนี้!
Julian Honma

นี่เป็นกรณีของฉันเช่นกันเมื่อไม่มีอะไรได้ผล มันน่าสนใจอย่างยิ่งที่ฉันสามารถสร้างแอปใน Android Studio ได้ แต่ไม่สามารถเรียกใช้บนอุปกรณ์ได้ adb uninstallเคล็ดลับทำอย่างรวดเร็ว!
Chad Schultz

23

ฉันมีปัญหาเดียวกันการสร้างโครงการใหม่จะล้างข้อผิดพลาดให้ฉัน

สร้าง -> สร้างโครงการใหม่ -> เรียกใช้


1
วิธีแก้ปัญหาที่ง่ายที่สุด!
ดาราใหม่

และถูกต้องเท่านั้น การปิดใช้งาน "การเรียกใช้ทันที" เป็นสิ่งที่ผิดโดยสิ้นเชิงเพราะจริงๆแล้วมันใช้งานได้ดีใน 99% ของกรณี
madhead

9

นี่เป็นปัญหากับสตูดิโอ 2.0+

ปัญหา 206036: ไม่มีการเปลี่ยนแปลงในเครื่องไม่ได้ปรับใช้ APK

ฉันพบวิธีแก้ปัญหาที่ดีที่นี่ เพียงแค่เพิ่มแฟล็ก -r ที่นี่ในแก้ไขการกำหนดค่าและปิดใช้งานทันที

ป้อนคำอธิบายภาพที่นี่

รอรับฟีเจอร์ Instant run ได้อย่างราบรื่นเร็ว ๆ นี้โดยไม่มีข้อผิดพลาดแบบที่ 3 อีกต่อไป !!


1
@RanjithKumar คุณต้องเพิ่มการตั้งค่านี้สำหรับแต่ละโปรเจ็กต์และสิ่งที่ฉันกำลังทำคือแม้ว่ามันจะแสดงข้อผิดพลาด แต่ได้รับการติดตั้ง apk ใหม่แล้วคุณสามารถดีบักหรือเล่นได้ ยกเลิกการเลือกข้ามการติดตั้งในแท็บเบ็ดเตล็ด
Rahul

7

สำหรับฉันปัญหาคือแอปที่ฉันพยายามเปิดใช้นั้นได้รับการติดตั้งแล้วภายใต้บัญชีผู้ใช้อื่นในโทรศัพท์ ฉันเห็นสิ่งนี้เมื่อฉันไปที่การตั้งค่า -> แอพที่ต้องการถอนการติดตั้ง ฉันเปลี่ยนไปใช้ผู้ใช้รายอื่นถอนการติดตั้งกลับมาเป็นผู้ใช้เดิมและสามารถติดตั้งและเปิดแอปจาก Android Studio ได้โดยไม่มีปัญหาอีกต่อไป


4

ฉันใช้เวลาหลายชั่วโมงในการแก้ไขปัญหานี้ การแก้ไข "เรียกใช้ทันที" เป็นความล้มเหลวทั้งหมด และฉันไม่พลาดที่android.intent.category.LAUNCHER ฉันลบ Android Studio และโค้ด SDK ที่เกี่ยวข้องทั้งหมดและติดตั้งใหม่ ยังคงไม่ไป

ท้ายที่สุดฉันคิดว่าปัญหาของฉันคือฮาร์ดแวร์ส่วนน้อย ฉันใช้แล็ปท็อปที่มีโปรเซสเซอร์ AMD A6-4400M ไม่มีเครื่องมือเร่งฮาร์ดแวร์ / เวอร์ชวลไลเซชัน ฉันเพิ่งใช้โปรแกรมจำลอง Android Studio / Google มาตรฐาน มันช้าอย่างเจ็บปวดและในที่สุดฉันก็สามารถเห็นโปรแกรมจำลองและโต้ตอบกับมันได้ แต่ฉันก็ไม่สามารถเชื่อมต่อโปรแกรมจำลองกับ Android Studio เพื่ออัปโหลด APK ได้

แต่ฉันได้ค้นพบวิธีแก้ไขที่ยอดเยี่ยม

  • ลบ Android Virtual Devices ทั้งหมดและติดตั้งGenyMotion Emulator (พร้อม VirtualBox)
  • ฉันเคยลองใช้โปรแกรมเลียนแบบ GenyMotion มาก่อนแล้ว (กับ Linux) และมันก็ไม่ได้สร้างความแตกต่างในเรื่องความเร็วในการโหลด
  • บนเครื่อง Windows 10 นี้ทำงานได้ดีเป็นพิเศษ มันค่อนข้างรวดเร็วเชื่อมต่อกับ Android Studio ได้อย่างง่ายดายและใช้งานแอพของฉันได้ดี
  • GenyMotion นำเสนออุปกรณ์ใช้งานส่วนตัวหนึ่งชิ้นโดยไม่มีค่าใช้จ่าย ขอชื่นชมทีม GenyMotion!

คำตอบที่ให้ไว้ที่นี่ในกรณีที่มีผู้อื่นติดอยู่กับข้อผิดพลาดนี้อาจเกิดจากสาเหตุนี้


3

ฉันพบปัญหาเดียวกันและได้รับการแก้ไขด้วยคำตอบนี้

แต่ปัญหานี้เกิดขึ้นเองขณะที่ฉันพยายามแก้ปัญหาการทดสอบหน่วยของฉัน ดังนั้นผมจึงต้องยกเลิกการเลือกUse in-process buildตัวเลือกในการตั้งค่าใน AS >Build, Execution, DeploymentCompiler

instant runดังนั้นในกรณีของฉันมันทำงานถ้าฉันคนพิการ แต่ก็ยังทำงานที่ผมเปิดใช้งานinstant run และยังเป็นUse in-process buildตัวเลือก


3

เพียงแค่เรียกใช้adb uninstall <package name>ในเทอร์มินัลของคุณและติดตั้งแอพใหม่อีกครั้ง

หวังว่าจะช่วยได้


และหากต้องการใช้ชื่อแพ็กเกจadb shell pm list packages
h8pathak

2

ปัญหาเดียวกัน แต่สำหรับฉันปัญหาคือ Android Studio ไม่พบกิจกรรมเริ่มต้นของฉัน เมื่อฉันระบุตัวกรองความตั้งใจเพื่อตรวจจับจุดประสงค์การดำเนินการหลักฉันไม่ได้ระบุหมวดหมู่ตัวเรียกใช้งานและนั่นทำให้เกิดปัญหา "การเปิดตัวกิจกรรมผิดพลาด"

    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />  <-- forgot
    </intent-filter>

1
ปัญหาอยู่ที่นั่นแม้ว่าฉันจะไม่ได้เปลี่ยนแปลงอะไรเลย แต่มันก็เป็นโปรเจ็กต์ใหม่ที่เป็นค่าเริ่มต้นบางทีมันอาจเกิดขึ้นหลังจากอัปเดต 2.0 Android studio
John R.

2

เพียงแค่Run --> clean and rerunในกรณีของฉันมันช่วยได้ แจ้งโดยอัตโนมัติเช่นข้อความต่อไปนี้

คุณจะถอนการติดตั้งกิจกรรมที่ติดตั้งไว้แล้วด้วยชื่อเดียวกันหรือไม่

หากกิจกรรมได้รับการติดตั้งแล้วให้ถอนการติดตั้งก่อนและเตรียมโครงการให้พร้อมหลังจากติดตั้งแอป


2

ฉันมีข้อผิดพลาดนี้เนื่องจากความโง่เขลาของฉัน ใน manifest.xml ฉันได้ประกาศสองกิจกรรมเป็นตัวเรียกใช้งานผิดพลาด ตรวจสอบให้แน่ใจว่าคุณมีกิจกรรมเดียวในฐานะ Launcher

    <activity android:name=".MainActivity">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

   <activity android:name=".WelcomeActivity">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
    </activity>

1

ฉันประสบปัญหาเดียวกันใน android studio 2.1.2 แต่ทำงานได้หลังจากเลือก Build -> Clean Project หรืออีกทางเลือกหนึ่งคือ Run -> Clean and Rerun


1

ฉันลองใช้คำตอบที่แนะนำทั้งหมดแล้ว ฉันพบว่านี่เป็นปัญหาฮาร์ดแวร์บนโทรศัพท์ Android N ที่มีเวอร์ชันสตูดิโอ 2.3 แอปเปิดตัวได้ดีบนโทรศัพท์รุ่นต่ำกว่า 7


1

ฉันได้แก้ไขปัญหาโดยใช้วิธีแก้ปัญหานี้แล้วหากคุณกำลังเรียกใช้แอปพลิเคชันในอุปกรณ์ USB ให้ปิดอุปกรณ์เสมือนทั้งหมดเช่น genymotion / virtual machine


1

เพียงปิดการใช้งานทันที

Go To File >> Settings >> Build, Execute, Deployment >> Instant Run

ยกเลิกการเลือกช่องที่ระบุว่าEnable instant run to hot swap code/resource changes on deploy

เรียกใช้โปรแกรมจำลองอีกครั้ง


1

ตกลงวิธีแก้ปัญหาที่เป็นไปได้มากมายสำหรับปัญหานี้หากไม่มีวิธีใดให้ลองทำ

ฉันประสบปัญหานี้เมื่อฉันถอนการติดตั้งแอพครั้งแรกจากนั้นลองติดตั้งใหม่จาก ADB แต่หลังจากลองใช้วิธีแก้ปัญหาเหล่านี้แล้วฉันก็รู้ว่าการถอนการติดตั้งแอพในปัจจุบันไม่สามารถถอนการติดตั้งได้จริงๆ เพียงแค่ปิดการใช้งานเพียงไม่กี่วันเพื่อให้สามารถเปิดใช้งานได้ในกรณีที่คุณเปลี่ยนใจ

ตอนนี้ฉันไม่แน่ใจว่ามันทำโดย LG หรือ Native Android Nougat

ฉันเพิ่งเข้าไปในการตั้งค่า -> แอป -> แอปของฉันและถอนการติดตั้งอย่างสมบูรณ์ หลังจากนั้นจาก Android studio ฉันสามารถติดตั้งแอปได้อีกครั้งอย่างถูกต้องโดยไม่มีข้อผิดพลาดนี้


ใช่ฉันไม่ชอบคุณสมบัตินี้ ถ้าฉันถอนการติดตั้งแล้วฉันไม่ต้องการมัน ฉันใช้เวลาสักพักในการคิดว่ามีอะไรผิดปกติ
Panama Jack

1

Adb ยังแสดงข้อผิดพลาดนี้หากapplicationIdแพ็กเกจของกิจกรรมการเรียกใช้งานหรือชื่อโมดูลมีerrorสตริงย่อย


โอ้พระเจ้าฉันหวังว่าฉันจะจูบคุณได้ 2 ปีฉันได้รับการจัดการกับสิ่งนี้ทั้งในและนอก
Bassinator

Google ทำไม? ฉันต้องการทราบว่าใครเป็นผู้รับผิดชอบในการเขียนโปรแกรมตูดเลอะเทอะนี้
Bassinator

1

ไม่มีคำตอบใดที่ช่วยฉันได้เนื่องจากฉันติดตั้งแอปเดียวกันในโปรไฟล์อื่นของฉัน วิธีการแก้ -

  1. เปลี่ยนไปใช้โปรไฟล์อื่น
  2. ถอนการติดตั้งแอพจากโปรไฟล์ที่ 2
  3. เปลี่ยนกลับ

0

ฉันลองคำตอบข้างต้นแล้ว อย่างไรก็ตามไม่มีวิธีแก้ปัญหาใดที่เหมาะกับฉัน ฉันเปลี่ยนอีมูเลเตอร์เป็น USB และรหัสกำลังทำงานบนอุปกรณ์เป้าหมายของ USB ในจังหวัด!


ฉันไม่มีปัญหากับโปรแกรมจำลองบนนาฬิกา Android ของฉัน 'Moto 360' เท่านั้น ฉันได้แก้ไขแล้วโดยการถอนการติดตั้งแอปจากอุปกรณ์ก่อนและหลังจากนั้นติดตั้งจาก AS สำเร็จ!
Kiryl Ivanou

0

คำตอบทั้งหมดไม่ได้ผลสำหรับฉันข้อผิดพลาดนี้เกิดขึ้นเมื่อฉันพยายามเปลี่ยนชื่อแพ็กเกจแอพฉันได้สร้างโปรเจ็กต์ใหม่ด้วยชื่อแพ็กเกจใหม่และย้ายไฟล์ไปยังโปรเจ็กต์ใหม่


เศร้าแค่ไหน .. :(
simo

0

ฉันได้แก้ไขปัญหาแล้ว (ใน Anroid watch Moto 360 ของฉัน) โดยถอนการติดตั้งแอปก่อนติดตั้งจาก AS


0

มันเกิดขึ้นเมื่อฉันเปลี่ยน applicationId ในไฟล์ app gradle มันใช้ได้กับฉันหลังจากที่ฉันซิงค์ gradle


0

ถอนการติดตั้งแอปบนอุปกรณ์จริงหรือโปรแกรมจำลองของคุณ จากนั้นเรียกใช้อีกครั้ง มันได้ผลสำหรับฉัน ฉันใช้ Android Studio 2.3.3


0

ฉันพยายามclean & rebuild projectและInvalidate Cache & Restartลบด้วยตนเอง.gradleและ.ideaโฟลเดอร์ แต่นั่นก็ไม่ได้แก้ไขปัญหา

ฉันมีบัญชีผู้ใช้ 3 บัญชีในโทรศัพท์ของฉัน ดังนั้นฉันไม่ได้เลือกถอนการติดตั้งสำหรับผู้ใช้ทั้งหมดและถอนการติดตั้งแอพของฉันจากบัญชีผู้ใช้แรกเท่านั้น แต่ยังคงอยู่ในบัญชีผู้เยี่ยมชมและบัญชีผู้ใช้ที่สองบัญชีผู้ใช้ที่สอง

ดังนั้นฉันจึงลบมันออกจากบัญชีที่เหลือและมันช่วยแก้ปัญหาของฉันได้ !!


0

ฉันมีปัญหาเดียวกัน ฉันใช้ AVD กับอิมเมจโปรเซสเซอร์แขนและได้รับข้อความเดียวกันนี้ วิธีเดียวที่ฉันจะทำให้ Android Studio 2.1.2 เรียกใช้แอปด้วยการรันทันทีคือเปลี่ยนเป็นอิมเมจโปรเซสเซอร์ X86 ข้อผิดพลาดหายไปและ (จนถึงขณะนี้) ฉันคิดว่าอีมูเลเตอร์ทำงานได้เร็วกว่า ARM การกำหนดค่าเวิร์กสเตชันของฉันคือ Intel I5, 6Gb RAM อาจช่วยได้จนกว่าจะแก้ไขครั้งต่อไป


0

ปิดการใช้งาน "การรันทันที" คุณสามารถไปที่ Preference Dialog (อาจเป็นไดอะล็อก Setting บน Windows) จากนั้นเลือก Build, Execution, Deployment> Instant Run และยกเลิกการเลือกช่องทำเครื่องหมายทั้งหมดเพื่อปิดใช้งาน Instant Run

และรีบูตอุปกรณ์ของคุณสิ่งนี้ควรทำให้สิ่งนี้ทำงานได้ .... การรันทันทีมีข้อบกพร่องใน Android studio 2+ สิ่งนี้ควรทำวิเศษ


0

ฉันได้รับข้อผิดพลาดเดียวกัน ปัญหานี้เกิดจากการถอนการติดตั้งแอปจากอุปกรณ์ (ถอนการติดตั้งจากผู้ใช้เพียง 1 คน)

แก้ไขได้โดยล็อกอินเข้าสู่ผู้ใช้รายอื่นและถอนการติดตั้งแอพจากที่นั่น

และแก้ไขได้


0

ฉันทำตามคำแนะนำทั้งหมดข้างต้น แต่ไม่ได้ผล! ฉันสร้างโครงการใหม่ถอนการติดตั้งแอพจากอุปกรณ์จริงของฉันถอดปลั๊ก USB จากนั้นฉันเรียกใช้ Android Studio และเรียกใช้แอปบนอุปกรณ์จริงของฉันและปัญหาก็หายไป

หวังว่านี่จะช่วยได้!


0

ฉันมีข้อผิดพลาดเดียวกันกับในบรรทัดแรก หลังจากที่ฉันเปลี่ยนชื่อเวอร์ชันและรหัสเวอร์ชันใน gradle การซิงค์ก็เกิดขึ้นจากนั้นก็ใช้งานได้ ดังนั้นบางทีแม้แต่การซิงค์ก็ช่วยได้ในบางครั้ง

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.