我想使用UrbanAirship最新的sdk创建一个文件。我在应用程序块下的app-xml中添加了Autopilot元数据txtAppendValue.BorderThickness=new Thickness("0,3,0,3");
,并创建了Autopilot的子类,并在那里添加了AirshipConfigOptions。当我尝试在实现FREFunction的类中调用select top 10 Note, LEN(Note) AS Before, LEN(replace(replace(replace(Note,' ','<>'),'><',''),'<>',' ') ) AS After,
replace(replace(replace(Note,' ','<>'),'><',''),'<>',' ') as Note from #ClientNote
WHERE note LIKE '% %'
order by DATALENGTH(Note) desc
时,它会给出以下错误 -
(<meta-data android:name="com.urbanairship.autopilot" android:value="com.sample.aneAndroid.TakeOffHelper" /> )
TakeOffHelper.java
Autopilot.automaticTakeOff(app);
UAPushNotificationExtensionInitFunction.java
02-03 17:14:11.949 23088-23088/? I/dalvikvm﹕ Could not find method com.urbanairship.Autopilot.automaticTakeOff, referenced from method com.sample.aneAndroid.UAPushNotificationExtensionSubscribeFunction.call
02-03 17:14:11.949 23088-23088/? W/dalvikvm﹕ VFY: unable to resolve static method 3322: Lcom/urbanairship/Autopilot;.automaticTakeOff (Landroid/app/Application;)V
答案 0 :(得分:0)
这可能是由于.jar文件不正确造成的。我使用以下格式的命令来构建我的ANE:
adt -package -target ane bin/airshipWrapper.ane src/extension.xml -swc lib/airshipWrapper.swc -platform Android-ARM -C working/android . -platform default -C working/default .
bin/airshipWrapper.ane
是ANE的目标位置
src/extension.xml
是您尝试构建的ANE的extension.xml的路径
lib/airshipWrapper.swc
是swc的路径,其中包含ANE的ActionScript类(这是您调用ExtensionContext.createExtensionContext()
的类的地方)。
working/android
是包含airshipWrapper.jar
和library.swf
airshipWrapper.jar
是一个组合的jar文件,包含您的Java类和所需的所有库类*
library.swf
摘自airshipWrapper.swc
。
working/default
是包含library.swf
的路径,其路径与airshipWrapper.swc
中的类相同(因此,当您在模拟器中运行时,您的项目不会中断)< / p>
*对于jar文件,我从我的Java项目中导出它,然后使用任何必要的库类运行jar更新。我使用ant
,但是从一个jar中提取类并更新另一个jar的任何方法都可以。
另请参阅AIR 3 Native Extensions for Android - Can I/How to include 3rd party libraries?以获取有关组合.jar文件的更多信息。