Tôi đang cố phát triển ứng dụng Android "Động".Cách bắt đầu một Hoạt động không tồn tại được đề cập trong Tệp kê khai?
Động theo nghĩa là tôi có hoạt động được liệt kê trong tệp kê khai được "tạo" khi chạy.
tôi có thể xây dựng các hoạt động cần thiết tốt, tuy nhiên, khi tôi cố gắng để bắt đầu nó ứng dụng của tôi không thành công với ...
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]]
Có một cách tiếp cận tôi có thể làm để nhanh chóng thành công Hoạt động Android trong thời gian chạy?
Có cách nào tôi có thể thêm hoạt động "tạm thời" hoặc "vỏ" vào đường dẫn ứng dụng của mình không? và sau đó thay thế hoạt động "tạm thời" bằng cá thể động của tôi?
CẬP NHẬT
XML Manifest của tôi có chứa cụm từ này
<activity
android:name=".Dynamic"
android:label="@string/title_activity_dynamic"
android:theme="@style/AppTheme.NoActionBar" />
Tuy nhiên, không có Hoạt động gọi là "Dynamic" chứa trong ứng dụng của tôi.
Tôi đang sử dụng ByteBuddy để xây dựng hoạt động năng động của tôi: -
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);
bạn có thể thêm một số mã không?! làm thế nào để bạn bắt đầu hoạt động của bạn cho một ví dụ –
Bạn có thể nhìn thấy tôi một số mã hoạt động của bạn để hiểu sự quetion? – SahdevRajput74