Android(安卓)NDK编程实现终端功能(调用system函数)
16lz
2022-01-13
原文地址::http://leo108.com/pid-597.asp
本程序能够实现在android中利用system函数执行命令,并将执行结果输出到指定的文件中。
核心代码:
hello-jni.c
复制代码
- #include
- #include
- JNIEXPORT jstring Java_com_example_hellojni_HelloJni_system(JNIEnv* env,jobject thiz, jstring str , jstring path)
- {
- const jbyte* p1 = (*env)->GetStringUTFChars(env , str, NULL);
- const jbyte* p2 = (*env)->GetStringUTFChars(env , path, NULL);
- char* str2=(char *)p1;
- char* path2=(char *)p2;
- strcat(str2," > ");
- strcat(str2,path2);
- system(str2);
- return(*env)->NewStringUTF(env,str2);
- }
复制代码
- package com.example.hellojni;
- import android.app.Activity;
- import android.widget.TextView;
- import android.os.Bundle;
- public class HelloJni extends Activity
- {
- /** Called when the activity is first created. */
- @Override
- public void onCreate(Bundle savedInstanceState)
- {
- super.onCreate(savedInstanceState);
- TextView tv = new TextView(this);
- tv.setText(system("ls","\"/mnt/sdcard/hello.txt\"") );//这里的第一个参数是要执行的命令,第二个参数是要输出的文件路径
- setContentView(tv);
- }
- public native String system(String str ,String path);
- static {
- System.loadLibrary("hello-jni");
- }
- }
更多相关文章
- Android(安卓)中各种XML文件的作用
- Introducing Quick Search Box for Android
- 弹球效果动画
- android:屏幕自适应
- 使用android中的handler延迟执行方法
- Android上通过gcc编译普通的C程序
- 在Android中使用HTML5本地存储,地理位置,离线应用
- Android(安卓)OpenGL学习笔记(二)之----三角形的绘制.
- Android实验法分析Touch事件传递