我今天開始使用 Android Studio 并創建了一個簡單的 Hello World 應用程式。
我已將其構建為 APK 檔案。然后我把這個 APK 檔案移到了我的手機上。我已經安裝了這個 APK。手機桌面上的圖示已經出現了,但是點擊的時候出現錯誤:Application not found。
手機:小米紅米 Note 7、Andriod 10。
Android Studio 專案是為從 Android 5 Lollipop 開始的 Andriod 系統構建的。
我試圖解決這個問題并嘗試了不同的方法。考慮到我不確定問題出在哪里(小米系統、android os、AndroidManifest 檔案、權限等),我嘗試了不同的方法:
- 如果小米手機出現問題:
我試過關閉MIUI優化,開啟USB除錯,開啟USB安裝。那是在Android開發人員設定中。這沒有幫助,電話開始出現故障。
- 以防萬一,如果問題出在某種方式上,我在其中構建了 APK:
我已經嘗試構建它 Build > Build Bundle(s) / APK(s) > Build APK(s)。當我看到我的手機顯示“找不到應用程式”時,我嘗試通過 Build > Generate Signed Bundle/APK 進行操作...然后我嘗試了除錯和發布。沒有任何幫助。
當我認為它可能與從不同來源安裝應用程式的權限有關時,我嘗試禁用 Google Play 保護掃描。那也沒有幫助。
我正在更深入地研究 AndroidManifest.xml,也許問題就在那里,但似乎沒問題。這是代碼的和平:
<application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/Theme.Music"> <activity android:name=".MainActivity" android:exported="false"> <intent-filter> <action android:name="android.intent.action.MAIN"/> <category android:name="android.intent.category.LAUNCHER"/> </intent-filter> </activity> </application>
所以我真的不知道,我該怎么做以及如何解決它。有任何想法嗎?謝謝。
編輯:
我的 PC 速度很慢,所以 android studio 中的 Android Emulator 無法正常作業,因此我不能說模擬器會怎么樣。
此外,我查看了手機上的檔案夾 Android/data/ 并沒有找到“com.example.music”包(這應該是我的應用程式的包名)。但我不確定這個包是否應該在這個檔案夾中。
我已經使用 APK 分析器掃描了這個已安裝的應用程式,它指出該應用程式的包是“com.example.music”并且它存在于手機上的某個位置。這意味著,應用程式應該基本上鏈接它,它應該在某個地方。
編輯2:
所以我嘗試通過 logcat 除錯這個東西,我收到了:
2022-05-05 23:38:52.316 2476-2476/? E/Launcher: Launcher does not have the permission to launch Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.example.music/.MainActivity bnds=[76,1104][244,1272] (has extras) }. Make sure to create a MAIN intent-filter for the corresponding activity or use the exported attribute for this activity.
java.lang.SecurityException: Permission Denial: starting Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.example.music/.MainActivity bnds=[76,1104][244,1272] (has extras) } from ProcessRecord{6cc44ac 2476:com.miui.home/u0a35} (pid=2476, uid=10035) not exported from uid 10498
at android.os.Parcel.createException(Parcel.java:2074)
at android.os.Parcel.readException(Parcel.java:2042)
at android.os.Parcel.readException(Parcel.java:1990)
at android.app.IActivityTaskManager$Stub$Proxy.startActivity(IActivityTaskManager.java:3973)
at android.app.Instrumentation.execStartActivity(Instrumentation.java:1716)
at android.app.Activity.startActivityForResult(Activity.java:5258)
at androidx.activity.ComponentActivity.startActivityForResult(ComponentActivity.java:584)
at com.miui.home.launcher.Launcher.access$11301(Launcher.java:357)
at com.miui.home.launcher.Launcher.lambda$startActivityForResult$47(Launcher.java:4602)
at com.miui.home.launcher.-$$Lambda$Launcher$jL9lylEWGhHCXkZoMaZMAX7ydlQ.run(Unknown Source:8)
at com.miui.home.launcher.Launcher.safelyStartActivity(Launcher.java:4557)
at com.miui.home.launcher.Launcher.startActivityForResult(Launcher.java:4594)
at android.app.Activity.startActivity(Activity.java:5583)
at com.miui.home.launcher.Launcher.startActivity(Launcher.java:4541)
at com.miui.home.launcher.Launcher$PerformLaunchAction.run(Launcher.java:4471)
at com.miui.home.launcher.Launcher$PerformLaunchAction.launch(Launcher.java:4451)
at com.miui.home.launcher.Launcher.launch(Launcher.java:4422)
at com.miui.home.launcher.ShortcutInfo.handleClick(ShortcutInfo.java:708)
at com.miui.home.launcher.Launcher.onClick(Launcher.java:4394)
at android.view.View.performClick(View.java:7185)
at android.view.View.performClickInternal(View.java:7162)
at android.view.View.access$3500(View.java:819)
at android.view.View$PerformClick.run(View.java:27678)
at com.miui.home.launcher.ItemIcon.post(ItemIcon.java:442)
at android.view.View.onTouchEvent(View.java:14899)
at com.miui.home.launcher.ItemIcon.onTouchEvent(ItemIcon.java:420)
at android.view.View.dispatchTouchEvent(View.java:13484)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3082)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2767)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3088)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2781)
at com.miui.home.launcher.CellLayout.dispatchTouchEvent(CellLayout.java:629)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3088)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2781)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3088)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2781)
at com.miui.home.launcher.Workspace.dispatchTouchEvent(Workspace.java:729)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3088)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2781)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3088)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2781)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3088)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2781)
at com.miui.home.launcher.DragLayer.dispatchTouchEvent(DragLayer.java:237)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3088)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2781)
at com.miui.home.launcher.ShortcutMenuLayer.dispatchTouchEvent(ShortcutMenuLayer.java:107)
2022-05-05 23:38:52.316 2476-2476/? E/Launcher: at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3088)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2781)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3088)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2781)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3088)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2781)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3088)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2781)
at com.android.internal.policy.DecorView.superDispatchTouchEvent(DecorView.java:498)
at com.android.internal.policy.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1853)
at android.app.Activity.dispatchTouchEvent(Activity.java:4059)
at com.miui.home.launcher.Launcher.dispatchTouchEvent(Launcher.java:4246)
at com.android.internal.policy.DecorView.dispatchTouchEvent(DecorView.java:456)
at android.view.View.dispatchPointerEvent(View.java:13745)
at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:5635)
at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:5435)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4936)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:4989)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4955)
at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:5095)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4963)
at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:5152)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4936)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:4989)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4955)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4963)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4936)
at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:7688)
at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:7657)
at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:7618)
at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:7816)
at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:251)
at android.os.MessageQueue.nativePollOnce(Native Method)
at android.os.MessageQueue.next(MessageQueue.java:336)
at android.os.Looper.loop(Looper.java:181)
at android.app.ActivityThread.main(ActivityThread.java:7590)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:539)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:950)
Caused by: android.os.RemoteException: Remote stack trace:
at com.android.server.wm.ActivityStackSupervisor.checkStartAnyActivityPermission(ActivityStackSupervisor.java:1089)
at com.android.server.wm.ActivityStarter.startActivity(ActivityStarter.java:789)
at com.android.server.wm.ActivityStarter.startActivity(ActivityStarter.java:588)
at com.android.server.wm.ActivityStarter.startActivityMayWait(ActivityStarter.java:1390)
at com.android.server.wm.ActivityStarter.execute(ActivityStarter.java:519)
uj5u.com熱心網友回復:
您不能嘗試通過除錯直接構建到設備嗎?您應該檢查 logcat,確保構建成功,然后嘗試通過 USB 除錯安裝應用程式。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/471543.html
