リンクをクリップボードにコピー
コピー完了
eclipseにて、jarライブラリを作成後、ANE化、Android側で呼び出した際に、リソースが上書きされてしまいます。
(eclipseでexportする際には、リソースも含むオプションにチェック)
例えば、下記の様にリソースに文字列を代入して返すFREFunctionを作成します。
string.app_nameをAir側で取得した際には、Airの実行中のプロジェクトのstring.app_nameが返ってきます。
Java側のリソースにstring.testを追加し、Air側で出力した場合には値がありません。
ANEでのリソース管理はどのように行うのが最適でしょうか?
参考:
http://help.adobe.com/ja_JP/air/extensions/WSf268776665d7970d-2e74ffb4130044f3619-7ff8.html
public class Native_xxxxxxx implements FREFunction {
private Resources res;
public FREObject call(FREContext arg0, FREObject[] arg1) {
try {
Activity activity = arg0.getActivity();
res = activity.getResources();
return FREObject.newObject(res.getString(arg0.getResourceId("string.app_name")));
//return FREObject.newObject(res.getString(arg0.getResourceId("string.test")));
//return FREObject.newObject(res.getString(R.string.test));
} catch ( Exception ex ) {
}
return null;
}
}
リンクをクリップボードにコピー
コピー完了
Air 3.5のバグの様です。