"Dinamik" bir Android uygulaması geliştirmeye çalışıyorum. Çalışma zamanında "yerleşik" olan bildirimde listelenen bir etkinliğim olması açısından dinamik.Manifest'te bahsedilmeyen bir Etkinlik nasıl başlatılır?
Bunun benim uygulama başlatmaya çalıştığınızda Ben, ancak, ince Gerekli etkinliği inşa edebilirsiniz başarıyla zamanında bir Android Aktivite örneğini alabilir bir yaklaşım var mı? ...
java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.research.ps/com.research.Dynamic}: java.lang.ClassNotFoundException:
Didn't find class "com.research.Dynamic" on path: DexPathList[[zip file "/data/app/com.research.ps-1/base.apk"],nativeLibraryDirectories=[/data/app/com.research.ps-1/lib/arm,
/data/app/com.research.ps-1/base.apk!/lib/armeabi-v7a, /vendor/lib, /system/lib]]
ile başarısız?
Uygulama yoluma "geçici" veya "kabuk" etkinliği ekleyebileceğim bir yol var mı? ve sonra "geçici" etkinliği dinamik durumumla değiştirilsin mi?
GÜNCELLEME
Benim Bildirisi XML benim uygulaması içinde yer alan "Dinamik" olarak adlandırılan hiçbir Etkinlik olduğunda, Ancak bu giriş,
<activity
android:name=".Dynamic"
android:label="@string/title_activity_dynamic"
android:theme="@style/AppTheme.NoActionBar" />
içerir. Benim dinamik aktiviteyi inşa etmek ByteBuddy kullanıyorum
: -
final Class<? extends android.support.v7.app.AppCompatActivity> dynamicType = new ByteBuddy(ClassFileVersion.JAVA_V8)
.subclass(android.support.v7.app.AppCompatActivity.class, IMITATE_SUPER_CLASS)
.name("com.research.Dynamic")
.make()
.load(getClass().getClassLoader(), new AndroidClassLoadingStrategy.Wrapping(this.getDir("dexgen", Context.MODE_PRIVATE)))
.getLoaded();
final Intent intent = new Intent(this, dynamicType);
startActivity(intent);
Bazı kodları ekleyebilir misiniz? Aktivitenizi bir örnek için nasıl başlatıyorsunuz? –
Sizi anlamak için bazı etkinlik kodlarınızı görebilir misiniz? – SahdevRajput74