3

同じフレーバーに同じactivityという名前を付けて、それぞれのフレーバーに適切な名前を付けようとしています。FLAVOR:Android Studioから実行できない - デバイスの動作から実行する

build.gradle:

android { 
    .... 
    buildscript { 
     productFlavors { 
      flavor1 { 
       applicationId "com.example.MyApp.flavor1" 
      } 
      flavor2 { 
       applicationId "com.example.MyApp.flavor2" 
      } 
      flavor3 { 
       applicationId "com.example.MyApp.flavor3" 
      } 
     } 
    } 
} 

のAndroidManifest.xml:

<activity 
     android:name="${applicationId}.LaunchActivity" 
     android:noHistory="false" > 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 
      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
     <intent-filter> 
      <action android:name="android.intent.action.VIEW" /> 
      <category android:name="android.intent.category.DEFAULT" /> 
      <category android:name="android.intent.category.BROWSABLE" /> 

      <data 
       android:host="*" 
       android:path="*" 
       android:scheme="@string/app_scheme_name" /> 
     </intent-filter> 
... 
<\activity> 

とすべてのflavorX.javaは次のようになります。

package com.example.MyApp.flavorX; 

import android.os.Bundle; 
import android.util.Log; 
import android.widget.Toast; 

import com.example.MyApp.MainActivity; 

public class LaunchActivity extends MainActivity { 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     String flavor = "~~~ flavorX ~~~~"; 
     Log.i("flavor", flavor); 
     super.onCreate(savedInstanceState); 
     Toast.makeText(this, flavor,Toast.LENGTH_SHORT).show(); 
    } 
} 

今...
私は(build variantと一緒に)すべての味についてA.S. "緑の再生ボタン"これらのことが起こる:
1.ビルド+コンパイルが正常に終了します。 Runビュー]タブの[
2.私はこのメッセージが表示されます。

Installing com.example.MyApp.flavorX 
    DEVICE SHELL COMMAND: pm install -r "/data/local/tmp/com.example.MyApp.flavorX" 
    pkg: /data/local/tmp/com.example.MyApp.flavorX 
    Success 
    Could not identify launch activity: Default Activity not found 

3.アプリは正しいアイコンと名前でデバイスにインストールされています。
4.インストールされたばかりのアイコン(デバイスから実行中) - はすべてOKですとアプリは要求どおりに動作します。インストールごとに独自の味があります。

これはデバッグや流暢現像用ひどいです...
私はA.Sを通じてその亜種で、それぞれの風味を実行できるようにするために何をすべき?

感謝:)

答えて

0

よく、問題は非常に簡単に解決されます。
は直接のAndroid Studioからそれぞれの味を実行するために、私は、ファイル名を指定して実行Specified Activityを宣言しなければならなかった - >編集の設定 - > Androidのアプリケーション
は、このソリューションを使用すると、Androidのメーカーから直接実行するすべての味のために必要とされます。

0

すべてのものが正常に見えます。ログのデフォルトのアクティビティを読み込めませんでした。つまり、Android Manifest.xmlに登録した最初のアクティビティにIntent-Filterを追加するのを忘れてしまいました。

  <activity 
      android:name=".YourFirstActivity" 
      android:label="@string/app_name" 
      android:theme="@style/AppTheme.Main"> 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

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

すでにマニフェストにこれらの行がありましたが、今すぐ追加します。 新しい提案がありますか? – RedHat

関連する問題