asset,exp/audio/al: cast context to jobject

Fixes golang/go#13823.

Change-Id: I13fc9234a2fb991312c148e7d779271454cb7b90
Reviewed-on: https://go-review.googlesource.com/18511
Reviewed-by: David Crawshaw <crawshaw@golang.org>
diff --git a/asset/asset_android.go b/asset/asset_android.go
index e654fba..9f53623 100644
--- a/asset/asset_android.go
+++ b/asset/asset_android.go
@@ -14,7 +14,7 @@
 // asset_manager is the asset manager of the app.
 AAssetManager* asset_manager;
 
-void asset_manager_init(uintptr_t java_vm, uintptr_t jni_env, uintptr_t ctx) {
+void asset_manager_init(uintptr_t java_vm, uintptr_t jni_env, jobject ctx) {
 	JavaVM* vm = (JavaVM*)java_vm;
 	JNIEnv* env = (JNIEnv*)jni_env;
 
@@ -48,7 +48,7 @@
 
 func assetInit() {
 	err := mobileinit.RunOnJVM(func(vm, env, ctx uintptr) error {
-		C.asset_manager_init(C.uintptr_t(vm), C.uintptr_t(env), C.uintptr_t(ctx))
+		C.asset_manager_init(C.uintptr_t(vm), C.uintptr_t(env), C.jobject(ctx))
 		return nil
 	})
 	if err != nil {
diff --git a/exp/audio/al/al_android.go b/exp/audio/al/al_android.go
index 1113562..580dc97 100644
--- a/exp/audio/al/al_android.go
+++ b/exp/audio/al/al_android.go
@@ -13,7 +13,7 @@
 #include <AL/al.h>
 #include <AL/alc.h>
 
-void al_init(uintptr_t java_vm, uintptr_t jni_env, uintptr_t context, void** handle) {
+void al_init(uintptr_t java_vm, uintptr_t jni_env, jobject context, void** handle) {
   JavaVM* vm = (JavaVM*)java_vm;
   JNIEnv* env = (JNIEnv*)jni_env;
 
@@ -221,7 +221,7 @@
 
 func initAL() {
 	err := mobileinit.RunOnJVM(func(vm, env, ctx uintptr) error {
-		C.al_init(C.uintptr_t(vm), C.uintptr_t(env), C.uintptr_t(ctx), &alHandle)
+		C.al_init(C.uintptr_t(vm), C.uintptr_t(env), C.jobject(ctx), &alHandle)
 		if alHandle == nil {
 			return errors.New("al: cannot load libopenal.so")
 		}