152d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project/* 252d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project * Copyright (C) 2008 The Android Open Source Project 352d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project * 452d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project * Licensed under the Apache License, Version 2.0 (the "License"); 552d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project * you may not use this file except in compliance with the License. 652d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project * You may obtain a copy of the License at 752d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project * 852d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project * http://www.apache.org/licenses/LICENSE-2.0 952d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project * 1052d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project * Unless required by applicable law or agreed to in writing, software 1152d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project * distributed under the License is distributed on an "AS IS" BASIS, 1252d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1352d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project * See the License for the specific language governing permissions and 1452d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project * limitations under the License. 1552d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project */ 1652d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project 1752d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Projectpackage com.example.android.simplejni; 1852d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project 1952d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Projectimport android.app.Activity; 2052d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Projectimport android.os.Bundle; 2152d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Projectimport android.widget.TextView; 2252d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project 2352d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Projectpublic class SimpleJNI extends Activity { 2452d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project /** Called when the activity is first created. */ 2552d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project @Override 2652d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project public void onCreate(Bundle savedInstanceState) { 2752d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project super.onCreate(savedInstanceState); 2852d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project TextView tv = new TextView(this); 2952d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project int sum = Native.add(2, 3); 3052d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project tv.setText("2 + 3 = " + Integer.toString(sum)); 3152d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project setContentView(tv); 3252d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project } 3352d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project} 3452d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project 3552d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Projectclass Native { 3652d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project static { 3752d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project // The runtime will add "lib" on the front and ".o" on the end of 3852d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project // the name supplied to loadLibrary. 3952d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project System.loadLibrary("simplejni"); 4052d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project } 4152d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project 4252d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project static native int add(int a, int b); 4352d4c30ca52320ec92d1d1ddc8db3f07f69c4f98The Android Open Source Project} 44