我使用原生扩展来构建自定义视频录制界面,启动此活动的代码是:
@Override
public FREObject call(FREContext freContext, FREObject[] args) {
Context context = freContext.getActivity().getApplicationContext();
Intent myIntent = new Intent(context, VideoRecorder.class);
int layoutID = freContext.getResourceId("layout.video_recorder");
int surfaceViewID = freContext.getResourceId("id.surfaceView");
int toggleRecordingButtonID = freContext.getResourceId("id.toggleRecordingButton");
myIntent.putExtra("layoutID", layoutID);
myIntent.putExtra("surfaceViewID", surfaceViewID);
myIntent.putExtra("toggleRecordingButtonID", toggleRecordingButtonID);
context.startActivity(myIntent);
return null;
}
由于我正在使用自定义活动,因此我将以下行添加到我的Flash清单xml文件中:
<application android:enabled="true">
<activity android:name="com.xxxxx.videorecorderlib.VideoRecorder"></activity>
</application>
“com.xxxxx.videorecorderlib”是VideoRecorder所在的原生Android软件包。
当我通过Flash和我的Android手机构建并运行应用程序时,我在ADT LogCat中收到以下错误:
07-22 17:25:33.282:D / VideoRecorder(15369): android.content.ActivityNotFoundException:无法找到显式 活动课 {air.com.xxxxx.videorecorderprototype / com.lxxxxx.videorecorderlib.VideoRecorder2}; 你有没有在AndroidManifest.xml中声明这个活动?
“air.com.xxxxx.videorecorderprototype”是我的Air app ID。请任何人都能告诉我为什么我收到这个错误?我也尝试在Android本机清单中添加<activity>
标记,但我仍然遇到相同的错误(尝试了完全限定名称和。语法)。
谢谢!
答案 0 :(得分:1)
<application>
标记作为<manifestAdditions>
的子标记,而不是<manifest>
。
希望这可以帮助有人下线!