android - एंड्रॉइड मेरा ऐप इंस्टॉल नहीं कर सकता, एलेप्से से एंड्रॉइड स्टूडियो में रखी गई, मेरे टेस्ट फोन पर, एक पिक्सेल एक्सएल




android-studio debugging (3)

कॉमन्सवायर की तरह टिप्पणी में उल्लिखित, ऐसा लगता है कि आपका ऐप इंस्टॉल कर रहा है, यह अभी शुरू करने में असमर्थ है। मैं जांचने के लिए दो चीजों के बारे में सोच सकता हूं:

  1. सुनिश्चित करें कि आपका AndroidManifest.xml फ़ाइल MainActivity के सही पूर्ण योग्य क्लास नाम को MainActivity । यदि यह गलत है, तो आपका ऐप इंस्टॉल होगा, लेकिन यह शुरू होकर दुर्घटनाग्रस्त हो जाएगा और आपकी MainActivity को खोजने में सक्षम नहीं होने के बारे में शिकायत MainActivity
  2. अगर आप प्रोगार्ड का उपयोग कर रहे हैं, तो यह सुनिश्चित करने के लिए जांचें कि आपके नियम सेट किए गए हैं ताकि MainActivity आपके MainActivity से MainActivity वर्ग को अलग नहीं कर MainActivity । कई डेवलपर्स केवल अपने गैर-डीबग बिल्ड को प्रोवाइव करते हैं और आपने उल्लेख किया है कि आपका डीबग काम ठीक बनाता है, ताकि एक संकेत हो।
  3. संपादित करें: मैं एक और के बारे में सोच सकता हूँ यदि आप अपने debug buildType में applicationId आईडी बदल रहे हैं, तो आपको अपने buildType adb am start कमांड में एक ही आईडी निर्दिष्ट करना होगा।

मैं कई सालों से किसी दोस्त की कंपनी के लिए एक ऐप बनाए रख रहा था। जब उन्होंने हाल ही में एंड्रॉइड 5 से एंड्रॉइड 7 तक अपडेट किया तो ऐप ने काम करना बंद कर दिया। इसलिए मैं एंड्रॉइड स्टूडियो में रखी और सामान फिक्स करने शुरू कर दिया। अब, बग्स की एक झुकाव के बाद, मैं अपने परीक्षण फोन पर इंस्टॉल करने के लिए ऐप नहीं ले सकता, जो कि पिक्सेल एक्सएल का एंड्रॉइड 8 चल रहा है। जब तक मैं इसे अनइंस्टॉल नहीं करता तब तक डीबग छवियां चल रहा था, इसलिए मैं इंस्टॉलेशन की जांच कर सकता था। (मुझे लगता है कि झटपट रन की वजह से था।)

अब मुझे निम्नलिखित मिलता है:

$ adb install-multiple -r -t I:\Users\...\app\build\intermediates\split-apk\debug\slices\slice_0.apk I:\Users\...\app\build\intermediates\split-apk\debug\slices\slice_1.apk I:\Users\...\app\build\intermediates\split-apk\debug\slices\slice_7.apk I:\Users\...\app\build\intermediates\split-apk\debug\slices\slice_4.apk I:\Users\...\app\build\intermediates\split-apk\debug\slices\slice_5.apk I:\Users\...\app\build\intermediates\split-apk\debug\dep\dependencies.apk I:\Users\...\app\build\intermediates\split-apk\debug\slices\slice_6.apk I:\Users\...\app\build\intermediates\split-apk\debug\slices\slice_3.apk I:\Users\...\app\build\intermediates\split-apk\debug\slices\slice_8.apk I:\Users\...\app\build\intermediates\split-apk\debug\slices\slice_2.apk I:\Users\...\app\build\intermediates\split-apk\debug\slices\slice_9.apk I:\Users\...\app\build\outputs\apk\debug\app-debug.apk 
Split APKs installed

$ adb shell am start -n "com.pbs.deliverytrack1/com.pbs.deliverytrack1.MainActivity" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER -D
    Error while executing: am start -n "com.pbs.deliverytrack1/com.pbs.deliverytrack1.MainActivity" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER -D
    Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.pbs.deliverytrack1/.MainActivity }
    Error type 3
    Error: Activity class {com.pbs.deliverytrack1/com.pbs.deliverytrack1.MainActivity} does not exist.

    Error while Launching activity

Com.pbs.deliverytrack1 / com.pbs.deliverytrack1। मुख्य गतिविधि क्या सही है?

अतिरिक्त नोट्स: मैं एपीके को सैमसंग एज 7.0 7.0 नोगाट 7.0 पर चलने पर ईमेल स्थापित करने में सक्षम था। मैं अभी भी अपने Google पिक्सेल एक्सएल पर स्थापित करने में असमर्थ हूं जो कि ओरेओ 8.0 चल रहा है।

मैंने उन बिल्ड संस्करणों के हर संयोजन के बारे में कोशिश की है जो मैं सोच सकता हूँ कुंजी, मुझे लगता है कि त्रुटि संदेश में है:

$ adb shell am start -n "com.pbs.deliverytrack1/com.pbs.deliverytrack1.MainActivity" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER -D
Error while executing: am start -n "com.pbs.deliverytrack1/com.pbs.deliverytrack1.MainActivity" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER -D
Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.pbs.deliverytrack1/.MainActivity }
Error type 3
Error: Activity class {com.pbs.deliverytrack1/com.pbs.deliverytrack1.MainActivity} does not exist.

अनुभाग में जो कहते हैं: cmp = com.pbs.deliverytrack1 /। मौन गतिविधि, क्या यह com.pbs.deliverytrack1 / com.pbs.deliverytrack1.MainActivity होना चाहिए?

अद्यतन करें minSDK, मैक्स एसडीके, और लक्ष्य एसडीके के साथ-साथ एंड्रॉइड के तीन अलग-अलग संस्करणों के साथ खिलवाड़ करने के बाद: 7.0, 7.1.1, और 8.0, मुझे काम जारी रखने का एक तरीका मिला है मेरा ग्राहक 7.0 और 7.1.1 का उपयोग कर रहा है, इसलिए मैंने एक एमुलेटर 7.0 का उपयोग किया, जिसका उपयोग मैं अपना आवेदन डिबग करने के लिए कर रहा था। (मेरी पत्नी का सुझाव, वास्तव में।) तो मैं फिर से आगे बढ़ रहा हूं।

मैं भी ऐसा करने वाला हूं जो मैं आमतौर पर अजीब समस्याओं से निपटने पर करता हूं। मैं -XLint के माध्यम से जा रहा हूँ और हर चेतावनी को ठीक कर सकता हूं जो मैं पा सकता हूं। (जब आप आप चाहते हैं कि बग ठीक नहीं कर सकते हैं, बच्चे, आप को प्राप्त बग को ठीक करें।) कुछ लंबे समय तक बकाया समस्याओं को साफ करने के अलावा, मैं उम्मीद कर रहा हूं कि अंततः इस बग के स्क्वैशिंग की ओर बढ़ेगा।

मदद और सुझावों के लिए सभी के लिए धन्यवाद मैं यह एक बिट के लिए खुला छोड़ दूँगा, यह देखने के लिए कि कोई चमत्कार के साथ आता है। मैं बस थोड़ा बाल्टी में जाने से इनाम देने को पसंद करता हूं :)

इसलिए, एक बार फिर, मैं नम्रता से मदद मांगता हूं। धन्यवाद, रे


अगर कुछ भी काम नहीं करता है, तो एंड्रॉइड स्टूडियो में एक नई परियोजना बनाने की कोशिश करें, जिसमें सभी उचित जानकारी (जैसे कि एक ही पैकेज का नाम, एंड्रॉइड डिवाइस के साथ संगतता), पहली गतिविधि का निर्माण करते समय, अपने जावा और एक्सएमएल लेआउट फाइलों में सारी सामग्री कॉपी करें पुरानी परियोजना से एक अन्य गतिविधि बनाएं (उदाहरण के लिए, अगर आपके एक्लिप्स प्रोजेक्ट में DrawerActivity गतिविधि होती है, तो एंड्रॉइड स्टूडियो में एक और ड्रेवर एक्टिवेटिव बनाएं।

मुझे यकीन नहीं है कि यह काम करेगा, लेकिन यह आसान विकल्प है। सबसे पहले, अपने पुराने प्रोजेक्ट के Resources फ़ोल्डर से सब कुछ कॉपी करें, सभी जावा फ़ाइलों को नई प्रोजेक्ट में कॉपी करें, क्योंकि Activities को परिभाषित करने की आवश्यकता है, अपने AndroidManifest.xml को अपने नए ऐप में कॉपी करें।

उम्मीद है की यह मदद करेगा!


अब एंड्रॉइड में और Android-8 , Android-7.1 Android-7 और Android-7 में बहुत सारे बदलाव हैं

तो इसमें बहुत सी नई चीजें हैं, यदि आप पृष्ठभूमि सेवा का उपयोग कर रहे हैं तो आपको एंड्रॉइड 7,7.1,8 के लिए अतिरिक्त Job scheduling जोड़ना है

नौगाट व्यवहार परिवर्तन

ओरेओ व्यवहार परिवर्तन

एंड्रॉइड एसडीके बिल्ड-टूल्स अद्यतन करें 27.0.1

आप मॉड्यूल ऐप ग्रैडल फ़ाइल बदल सकते हैं

apply plugin: 'com.android.application'

android {
    compileSdkVersion 26
    buildToolsVersion "26.0.1"
    defaultConfig {
        applicationId "com.example.package"
        minSdkVersion 16
        targetSdkVersion 26
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile 'com.android.support:appcompat-v7:26.+'
    compile 'com.android.support.constraint:constraint-layout:1.0.2'
    testCompile 'junit:junit:4.12'
}

इम्यूलेटर का समर्थन करने के लिए

Sdk Android-7.7.1,8 अपडेट करें स्थानीय इम्यूलेटर बनाने के लिए फ़ाइल मेनू -> सेटिंग -> प्रकटन और व्यवहार -> सिस्टम सेटिंग -> एंड्रॉइड एसडीके





installation