2017-05-10 115 views
1

我是Android Studio新手。我現在正在使用它,希望獲得一些錯誤消息,這將解釋爲什麼我的APK無法在Blue Stacks中運行。 APK建立在Unity中。運行應用程序時出錯:未找到默認活動

安裝Android Studio,電話模擬器等後,我仍然無法運行APK。它說:

Error running app: Default Activity not found 

已經有a post有關此錯誤的堆棧溢出。不過,我的AndroidManifest.xml看起來很好。我也試過'無效緩存/重啓'無濟於事。當我去編輯配置>啓動選項>指定的活動,我看不到任何活動供我選擇。

下面是我的AndroidManifest:

<?xml version="1.0" encoding="utf-8"?> 
<manifest 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:theme="@ref/0x01030006" 
    android:versionCode="91" 
    android:versionName="91" 
    android:installLocation="2" 
    package="com.quizjungle.android" 
    platformBuildVersionCode="25" 
    platformBuildVersionName="7.1.1"> 

    <supports-screens 
     android:anyDensity="true" 
     android:smallScreens="true" 
     android:normalScreens="true" 
     android:largeScreens="true" 
     android:xlargeScreens="true" /> 

    <uses-sdk 
     android:minSdkVersion="15" 
     android:targetSdkVersion="25" /> 

    <application 
     android:label="@ref/0x7f060050" 
     android:icon="@ref/0x7f02004c" 
     android:debuggable="false" 
     android:banner="@ref/0x7f02004b" 
     android:isGame="true"> 

     <activity 
      android:label="@ref/0x7f060050" 
      android:name="com.unity3d.player.UnityPlayerNativeActivity" 
      android:launchMode="2" 
      android:screenOrientation="1" 
      android:configChanges="0x40000fff"> 

      <intent-filter> 

       <action 
        android:name="android.intent.action.MAIN" /> 

       <category 
        android:name="android.intent.category.LAUNCHER" /> 

       <category 
        android:name="android.intent.category.LEANBACK_LAUNCHER" /> 
      </intent-filter> 

      <meta-data 
       android:name="unityplayer.UnityActivity" 
       android:value="true" /> 

      <meta-data 
       android:name="unityplayer.ForwardNativeEventsToDalvik" 
       android:value="true" /> 
     </activity> 

     <activity 
      android:theme="@ref/0x01030011" 
      android:name="com.facebook.unity.FBUnityLoginActivity" 
      android:configChanges="0x40000fff" /> 

     <activity 
      android:theme="@ref/0x01030011" 
      android:name="com.facebook.unity.FBUnityDialogsActivity" 
      android:configChanges="0x40000fff" /> 

     <activity 
      android:name="com.facebook.unity.FBUnityAppLinkActivity" 
      android:exported="true" /> 

     <activity 
      android:name="com.facebook.unity.FBUnityDeepLinkingActivity" 
      android:exported="true" /> 

     <activity 
      android:name="com.facebook.unity.FBUnityGameRequestActivity" /> 

     <activity 
      android:name="com.facebook.unity.FBUnityCreateGameGroupActivity" /> 

     <activity 
      android:name="com.facebook.unity.FBUnityJoinGameGroupActivity" /> 

     <activity 
      android:name="com.facebook.unity.AppInviteDialogActivity" /> 

     <meta-data 
      android:name="com.facebook.sdk.ApplicationId" 
      android:value="1479999760.000000" /> 

     <provider 
      android:name="com.facebook.FacebookContentProvider" 
      android:exported="true" 
      android:authorities="com.facebook.app.FacebookContentProvider365740347105248" /> 

     <activity 
      android:theme="@ref/0x01030011" 
      android:name="com.chartboost.sdk.CBImpressionActivity" 
      android:excludeFromRecents="true" 
      android:configChanges="0x4a0" 
      android:hardwareAccelerated="true" /> 

     <meta-data 
      android:name="com.google.android.gms.version" 
      android:value="@ref/0x7f050000" /> 

     <activity 
      android:theme="@ref/0x7f08000f" 
      android:name="com.facebook.FacebookActivity" 
      android:configChanges="0x5b0" /> 

     <activity 
      android:name="com.facebook.CustomTabActivity" 
      android:exported="true" /> 

     <activity 
      android:name="com.facebook.CustomTabMainActivity" /> 

     <service 
      android:name="com.google.android.gms.measurement.AppMeasurementService" 
      android:enabled="true" 
      android:exported="false" /> 

     <receiver 
      android:name="com.google.android.gms.measurement.AppMeasurementReceiver" 
      android:enabled="true" 
      android:exported="false" /> 

     <receiver 
      android:name="com.google.android.gms.measurement.AppMeasurementInstallReferrerReceiver" 
      android:permission="android.permission.INSTALL_PACKAGES" 
      android:enabled="true"> 

      <intent-filter> 

       <action 
        android:name="com.android.vending.INSTALL_REFERRER" /> 
      </intent-filter> 
     </receiver> 

     <provider 
      android:name="com.google.firebase.provider.FirebaseInitProvider" 
      android:exported="false" 
      android:authorities="com.quizjungle.android.firebaseinitprovider" 
      android:initOrder="100" /> 

     <service 
      android:name="com.google.firebase.iid.FirebaseInstanceIdService" 
      android:exported="true"> 

      <intent-filter 
       android:priority="-500"> 

       <action 
        android:name="com.google.firebase.INSTANCE_ID_EVENT" /> 
      </intent-filter> 
     </service> 

     <receiver 
       android:name="com.google.firebase.iid.FirebaseInstanceIdReceiver" 
      android:permission="com.google.android.c2dm.permission.SEND" 
      android:exported="true"> 

      <intent-filter> 

       <action 
        android:name="com.google.android.c2dm.intent.RECEIVE" /> 

       <action 
        android:name="com.google.android.c2dm.intent.REGISTRATION" /> 

       <category 
        android:name="com.quizjungle.android" /> 
      </intent-filter> 
     </receiver> 

     <receiver 
     android:name="com.google.firebase.iid.FirebaseInstanceIdInternalReceiver" 
      android:exported="false" /> 

     <activity 
      android:theme="@ref/0x01030011" 
      android:name="com.unity.purchasing.googleplay.PurchaseActivity" 
      android:configChanges="0x40000fff" /> 

     <activity 
      android:theme="@ref/0x0103000f" 
      android:name="com.google.android.gms.ads.AdActivity" 
      android:configChanges="0xfb0" /> 

     <activity 
      android:theme="@ref/0x7f080000" 
     android:name="com.google.android.gms.ads.purchase.InAppPurchaseActivity" /> 

     <activity 
      android:theme="@ref/0x01030010" 
      android:name="com.google.android.gms.common.api.GoogleApiActivity" 
      android:exported="false" /> 
    </application> 

    <uses-permission 
     android:name="android.permission.INTERNET" /> 

    <uses-permission 
     android:name="android.permission.ACCESS_NETWORK_STATE" /> 

    <uses-permission 
     android:name="android.permission.ACCESS_WIFI_STATE" /> 

    <uses-permission 
     android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 

    <uses-permission 
     android:name="android.permission.android.permission.READ_PHONE_STATE" /> 

    <uses-permission 
     android:name="android.permission.WAKE_LOCK" /> 

    <permission 
     android:name="com.quizjungle.android.permission.C2D_MESSAGE" 
     android:protectionLevel="0x2" /> 

    <uses-permission 
     android:name="com.google.android.c2dm.permission.RECEIVE" /> 

    <uses-permission 
     android:name="com.quizjungle.android.permission.C2D_MESSAGE" /> 

    <uses-permission 
     android:name="com.android.vending.BILLING" /> 

    <uses-feature 
     android:glEsVersion="0x20000" /> 

    <uses-feature 
     android:name="android.hardware.touchscreen" 
     android:required="false" /> 

    <uses-feature 
     android:name="android.hardware.touchscreen.multitouch" 
     android:required="false" /> 

    <uses-feature 
     android:name="android.hardware.touchscreen.multitouch.distinct" 
     android:required="false" /> 
</manifest> 

enter image description here

我應該怎麼做才能運行APK?

* UPDATE *

我不知道如果這有助於。當我跑「分析APK ...」,我得到了以下內容:enter image description here

*更新2 * 還有一個紅色的感嘆號我旁邊的Android Studio中體現其內容「URI未註冊。 」,指着這行:

xmlns:android="http://schemas.android.com/apk/res/android" 
+0

您是否有任何刪除的活動可能仍然存在於清單中? –

+0

你是什麼意思?我不這麼認爲。我根本沒有觸及過艙單。 –

+0

不,我的意思是你可能已經刪除了一些活動,但忘記在清單文件中刪除它們。就我個人而言,我沒有這樣的問題 –

回答

0

問題可能來自清單:而不必爲手機和電視相同的發射活動,嘗試像這樣把它們分開(儘管不是很確定):

<application 
    ... 
    <activity 
    android:name="com.example.android.MainActivity" 
    android:label="@string/app_name" > 

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

    <activity 
    android:name="com.example.android.TvActivity" 
    android:label="@string/app_name" 
    android:theme="@style/Theme.Leanback"> 

    <intent-filter> 
     <action android:name="android.intent.action.MAIN" /> 
     <category android:name="android.intent.category.LEANBACK_LAUNCHER" /> <!-- See here ?--> 
    </intent-filter> 

    </activity> 
</application> 

你也應該申報的Leanback支持:

<manifest> 
    <uses-feature android:name="android.software.leanback" 
     android:required="false" /> 
    ... 
</manifest> 

required屬性值設置爲false。如果您將必需的屬性值設置爲true,則您的應用只能在使用Leanback UI的設備上運行。

+0

請忍受我這一點,但有沒有辦法來修改直接顯示?我擁有的只是一個APK文件。 –

0

嘗試將此代碼添加到您的清單:

<category android:name="android.intent.category.LAUNCHER" /> 
0
<activity 
     android:name="FULL_NAME_OF_YOUR_ACTIVITY" 
     android:label="@string/app_name" > 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

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

這應該之間插入:

<application> </application> 

沒有必要爲無效緩存和重新啓動。

相關問題