アプリケーションで Javascript インターフェイスを使用しています。
デバイス (Galaxy 3) でデバッグを実行すると、問題なく完全に実行されますが、リリース apk ファイルを作成すると、JavaScript が実行されていない可能性があります。
これはJavaScriptInterface
クラスです:
public class StreamingMediaPlayer{
public class JavaScriptInterface {
Context mContext;
JavaScriptInterface(Context c) {
mContext = c;
}
@JavascriptInterface
public void FinishExtract(String url) {
}
}
}
これは、proguard ファイルが原因だと思います。
# To enable ProGuard in your project, edit project.properties
# to define the proguard.config property as described in that file.
#
# Add project specific ProGuard rules here.
# By default, the flags in this file are appended to flags specified
# in ${sdk.dir}/tools/proguard/proguard-android.txt
# You can edit the include path and order by changing the ProGuard
# include property in project.properties.
#
# For more details, see
# http://developer.android.com/guide/developing/tools/proguard.html
# Add any project specific keep options here:
# If your project uses WebView with JS, uncomment the following
# and specify the fully qualified class name to the JavaScript interface
# class:
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
# public *;
#}
-dontwarn org.apache.commons.codec.binary.**
-dontwarn com.commonsware.cwac.sacklist.**
-dontwarn com.commonsware.cwac.tlv.**
-dontwarn com.nineoldandroids.**
-dontwarn com.apps.model.**
-keep class com.millennialmedia.android.** {*;}
-keep public class cmn.Proguard$KeepMembers
-keep public class * implements cmn.Proguard$KeepMembers
-keepclassmembers class * implements cmn.Proguard$KeepMembers {
<methods>;
}
-keepattributes *Annotation*
-dontwarn android.webkit.JavascriptInterface
-keep class com.apps.model.** { *; }
-keepattributes *Annotation*
proguard
ファイルに何かを追加する必要がありましたか? 問題は別のものでしたか?