예 당신은 할 수있다, 당신이 필요로하는 유일한 것은 애플리케이션의 매니페스트 파일에서 활동 세부 사항을 언급하는 것입니다.
또한 활동의 레이아웃 파일이 있는지 확인하십시오.
예 : 내 응용 프로그램의 라이브러리 jar 파일에 TestActivity를로드하려고합니다.
TestActivity.class (JAR 파일에있는) :
public class TestActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(getIntent().getIntExtra("LAYOUT", -1));
}
}
MainActivity.class (응용 프로그램 프로젝트에있는)
public class MainActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity);
Intent intTest = new Intent(this, TestActivity.class);
intTest.putExtra("LAYOUT", R.layout.activity_test);
startActivity(intTest);
}
}
레이아웃 : actitivity.xml 및 activity_test.xml 모두에 있어야합니다 응용 프로그램의 레이아웃 폴더.
Manifestfile에서 TestActivity를 언급해야합니다.
<activity android:name="yourPackage.TestActivity"></activity>
성공적으로 실행하셨습니까? '05-20 17 : 11 : 10.028 : E/AndroidRuntime (32561) : java.lang.RuntimeException : 활동을 인스턴스화 할 수 없습니다. ComponentInfo {com.example.dex/com.example.dex. lib.LibActivity} : java.lang.ClassNotFoundException : 경로 "com.example.dex.lib.LibActivity"클래스를 찾지 못했습니다 : DexPathList [[zip 파일 "/data/app/com.example.dex-1.apk "], nativeLibraryDirectories = [/ data/app-lib/com.example.dex-1,/vendor/lib,/system/lib]] ' – Zennichimaro