拡張ファイル - 無効 に する android app bundle と apk




2つのアプリをインストールする1つの.apkファイル (4)

これは、2つの異なる.apk(または1つの.apkファイルに含まれる2つのアプリケーション)を持つAndroidアプリケーションに関する質問です。

私は2つのアプリを使っていますが、それらはまったく異なるものですが、関連しています。1つは標準ユーザーアプリ、もう1つは管理アプリです。 しかし、ユーザーはユーザーと管理者の両方になることができます。 2つのアプリケーションを電話機にインストールする1つの.apkファイルを作成することは可能ですか。 そして、私はこれについてどう思いましたか?

ありがとう、マット


2つのAPKを構築して、 APK拡張ファイルを使用する必要があります

ところで、これはセキュリティ対策です。


いいえ

できることは、2番目のアプリが既にインストールされているかどうかを確認することです。答えが「いいえ」の場合は、 this投稿を使用して2番目のアプリをインストールするように要求することができます。


同じマニフェストファイルに2つのactivity要素を含めることができます。これらの要素には、 action = MAINcategory = LAUNCHERの両方のインテントフィルタがあります 。 さらに、両方のアクティビティ要素に属性「 android:taskAffinity 」も使用する必要があります(こちらもhere )。

<application android:allowBackup="true"        
             android:icon="@drawable/main_icon"
             android:label="@string/main_name"
             android:theme="@style/AppTheme" >

    <activity android:name="com.foobar.MyActivity2"            
              android:taskAffinity="com.foobar.MyActivity2"
              android:icon="@drawable/icon1"
              android:label="@string/name1" >
        <intent-filter>
            <action   android:name="android.intent.action.MAIN"       />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>        

    <activity android:name="com.foobar.MyActivity2"
              android:taskAffinity="com.foobar.MyActivity2"
              android:icon="@drawable/icon1"
              android:label="@string/name2" >
        <intent-filter>
            <action   android:name="android.intent.action.MAIN"       />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>             

</application>

このマニフェストを持つAPKファイルがデバイスにインストールされると、ホームスクリーンに2つのアイコンを作成します。 これらのアイコンのタイトルは属性android:labelから取得され、 アイコンは属性android:iconから取得されます「設定|アプリ」の下のアプリのリストには、アプリケーションタグの属性によって定義された名前とアイコンが表示されます。 アプリのリストでこのエントリに「アンインストール」を選択すると、両方の「アプリ」がデバイスから削除されます。


それはあなたの "アプリケーション"の定義次第です。 manifest.xml<application>を1つしか含めることができないため、より正式な定義を使用すると2つのアプリケーションをインストールすることはできません。

あなたはあなたのmanifest.xmlでいくつかのアクティビティを定義することができます、そしてそれらは別々のことをすることができますのでそのようにあなたは人が1つのAPKで「アプリケーション」として記述するかもしれない2つの事柄を持つことができます

複数のアクティビティを定義し、それらをオプションとして定義することもできますが、それはあなたの「アプリケーション」の定義によって異なりますが、この場合はうまくいくと思います





apk