}
char* userSpace() {
struct passwd *pw;
char aaa[32] = "abc";
pw = getpwuid(getuid());
strcpy(aaa, pw->pw_name);
char hostn[32] = { 0 };
gethostname(hostn,
sizeof(hostn));
char path[50] = { 0 };
char* hello;
hello = malloc(32);
strcpy(hello, "123456");
return hello;
// strcat("@", strcat(hostn, strcat(":",
strcat("$", "\\n")))));
}
=================================================
=================================================
Header.h
#ifndef HEADER_H_
#define HEADER_H_
int sum(int a, int b);
#endif
===============================================================
# Copyright (C) 2009 The Android Open Source
Project
#
# Licensed under the Apache License, Version
2.0 (the "License");
# you may not use this file except in
compliance with the License.
# You may obtain a copy of the License
at
#
#http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed
to in writing, software
# distributed under the License is
distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied.
# See the License for the specific language
governing permissions and
# limitations under the
License.
#
LOCAL_PATH := $(call my-dir)
#========================
my_swig_generate.mk(文件信息)
include $(CLEAR_VARS)
LOCAL_MODULE := hello-jni
LOCAL_SRC_FILES := hello-jni.c
Header.c
MY_SWIG_PACKAGE :=
com.apress.swig
MY_SWIG_INTERFACES := Unix.i
MY_SWIG_TYPE := c
include
$(LOCAL_PATH)/my_swig_generate.mk
include
$(BUILD_SHARED_LIBRARY)
==============================================
Android.mk
ifndef MY_SWIG_PACKAGE
$(error MY_SWIG_PACKAGE is not
defined.)
endif
MY_SWIG_OUTDIR:=
$(NDK_PROJECT_PATH)/SRC/$(SUBST
.,/,$(MY_SWIG_PACKAGE))
ifndef
MY_SWIG_TYPE
MY_SWIG_TYPE := c
endif
ifeq ($(MY_SWIG_TYPE),cxx)
MY_SWIG_MODE := - c++
else
MY_SWIG_MODE :=
endif
LOCAL_SRC_FILES+= $(foreach
MY_SWIG_INTERFACE,\\
$(MY_SWIG_INTERFACES),\\
$(basename
$(MY_SWIG_INTERFACE))_wrap.$(MY_SWIG_TYPE))
LOCAL_CPP_EXTENSION+= .cxx
%_wrap.$(MY_SWIG_TYPE) : %.i
$(call
host-mkdir,$(MY_SWIG_OUTDIR))
swig -java \\
$(MY_SWIG_MODE) \\
-package $(MY_SWIG_PACKAGE)
\\
-outdir $(MY_SWIG_OUTDIR) \\
$<
先简单说一下,如果我们只是单单使用的swig来完成这个代码的jNI使用,只能使用库函数中的代码,除了库中的代码之外其他的代码都不能使用这里说的其他代码也就是我说的自定义代码,header.c里面的代码
我们的i文件只能时一个接口,不能再里面直接写代码语句所以我们通过.so库的形式进行了链接然后实现了我们的功能。
华清远见在面对巨大挑战的同时,在业务和课程方面不断加大投入,在接下来的2017课程研发上投入的预算高达企业总营收的10%,真正体现了“专业始于专注,卓识源自远见”的企业发展理念。而出色的质量控制和学员的高度认可,则成为华清远见创业10多年的立足之本,为华清远见树立了良好的企业形象,也为未来持续稳定的快速发展奠定了坚实基础。