Hi Suchita, I think this is the wrong group for such a question, as it seems that you make a platform extension, right ?
Nevertheless some things : a) Did you check that your app is really running with system id ? b) Is the app signed with the platform key ? From your Android.mk is seems not to be the case. c) You need to check the property_service which process id is allowed to write net.if.* d) You don't need native calls for setprop, you can use "SystemProperties.set" as other System-Parts does this. Good luck ! Frank On 11 Aug., 14:15, Suchita Sharma <[email protected]> wrote: > Hi all, > > I am trying to update some system property using *native api property_set > (/cutils/properties.h*) .But it is not changing the value of property . > I am running my application as system Server UID using > android:sharedUserId="android.uid.system iin manifest file.. > > I have tried several times but all effort is in vain. > Is there any other step required to use* native api property_set?* > > Please suggest. > > I am setting property in jni file and calling it in java file.. > My code snippet is below: > ********************************************** > *JNIWrapperClass .java* > ********************************************** > > public class JNIWrapperClass { > static { > try { > System.load("/data/app/libsetPropjni.so"); > System.out.print("jni called");} > > catch (UnsatisfiedLinkError err) { > err.printStackTrace(); > } > } > public static native int setprop(); > public static native boolean getprop(); > > } > > *************************************** > *setPropjni.c* > **************************** > #define LOG_TAG "WidgetJNIInterface" > #include <utils/Log.h> > #include <string.h> > #include <jni.h> > #include <cutils/sockets.h> > #include <cutils/properties.h> > > JNIEXPORT jint JNICALL Java_com_testforsofile_JNIWrapperClass_setprop > (JNIEnv *env, jclass jc) > { > LOGD("[Widget-JNI]:Inside setProp()"); > jint jflag=property_set("net.if.default","rmnet0"); > LOGD("[Widget-JNI]:after setProp() net.if.def flag = [%d] \n", jflag); > return jflag;} > > ************************************************* > *Android.mk file* > *********************************************** > # This makefile supplies the rules for building a library of JNI code for > # use by our platform shared library. > > LOCAL_PATH:= $(call my-dir) > > include $(CLEAR_VARS) > > LOCAL_MODULE_TAGS := user > LOCAL_CERTIFICATE := platform > # This is the target being built. > LOCAL_MODULE:= libsetPropjni > > # All of the source files that we will compile. > LOCAL_SRC_FILES:= \ > setPropjni.c > > # All of the shared libraries we link against. > LOCAL_SHARED_LIBRARIES := \ > libandroid_runtime \ > libnativehelper \ > libcutils \ > libutils \ > libnetutils\ > LOCAL_CFLAGS += -Idalvik/libnativehelper/include/nativehelper > # Also need the JNI headers. > LOCAL_C_INCLUDES += \ > $(JNI_H_INCLUDE)\ > $(LOCAL_PATH) \ > # Don't prelink this library. For more efficient code, you may want > # to add this library to the prelink map and set this to true. > LOCAL_PRELINK_MODULE := false > > include $(BUILD_SHARED_LIBRARY) -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/android-developers?hl=en

