❶ androidStudio怎样使用NDK开发示例
1、新建一个Android工程,这一步就不多说了;
2、在AndroidStudio中配置NDK路径,方法是:
(1)先下载NDK并安装(这句基本是废话);
(2)点菜单栏的File->ProjectStructure…->在打开的窗口中左侧选中SDKLocation->在右侧Android NDK Location中填入NDK目录所在路径
3、编译生成.class文件,方法是:
点菜单栏的Build->Make Project
这时,在工程的app/build/intermediates下就会生成classes文件夹,打开classes目录下的debug目录就会看到以你的包名命名的各级文件夹,最里边文件夹下有你的java类对应的.class文件;
4、确定你要引用本地方法的类:
其实你也可以先生成jni目录,再去创建这个类,但是先Google显然建议先创建要引用C代码的Java类,因为AndroidStudio可以根据你在java类中定义的native方法的名称来自动生成.h头文件。
比如你想在MainActivity中引用本地方法,那么你先用
static {
System.loadLibrary("myNativeLib");
}
来声明本地代码库,然后定义几个natvie方法,比如
public native String getStringFromNative();
5、使用javah命令行生成jni目录及对应的头文件:
我用的是AndroidStudio 2.1.1,在主界面最下边就能找到Terminal,点一下就能打开系统的命令行工具,并且已经为你自动cd到当前工程所在目录
6、配置build.gradle文件
这里的build.gradle是指app模块下的build.gradle,不是整个工程的build.gradle文件。在模块的build.gradle的defaultConfig下加入以下idk配置:
ndk {
moleName"myNativeLib"
ldLibs "log", "z", "m"
abiFilters "armeabi", "armeabi-v7a", "x86"
}
7、配置local.properties文件
打开工程目录下的local.properties,感觉这一步是自动配置的,或者说在你一开始在AndroidStudio中指定NDK目录时已经自动生成了。我的AndroidStudio在打开local.properties已经有了
ndk.dir=/Develop/Android/android-ndk-r10e
这一行,所以就不用配了;
8、配置gradle.properties
打开工程目录下的gradle.properties文件(注意不是build.gradle,而是gradle.properties),在文件的最后一行加入
android.useDeprecatedNdk=true
这句的作用是允许我们使用已经过时的NDK版本,不知道AndroidStudio要求使用哪个版本的NDK才不会报错,总之只要配置了这一句就可以使用比较旧的NDK版本了,我用的r10;
至此我们在AndroidStudio中就完成了NDK环境的配置,接下来就可以写Native代码了;
9、写一个.c文件测试一下是否运行正常
(1)在我们之前生成src/main/jni目录下新建一个.c文件,方法是在jni文件夹上点鼠标右键,选择New->C/C++ Source File,然后在弹出的对话框中填入.c或.cpp文件的文件名就可以了,比如说mail.c
❷ 怎样使用Android SDK 里的示例代码
直接Import是会出错的,我试过,
你可以这样:新建一个Android工程的时候,在Contents选择:Create project form exising source
然后选择示例代码。
❸ android开发如何用代码改变已经存在的文件夹名称,是文件夹名称不是文件名称
方案:
通过File的renameTo方法进行修改。
步骤:
1、获取就文件夹路径,然后new File对象
2、获取新文件夹路径,然后new File对象
3、通过renameTo修改文件夹名称
代码示例:
privatebooleanrenameToNewFile(Stringsrc,Stringdest)
{
FilesrcDir=newFile(src);//就文件夹路径
booleanisOk=srcDir.renameTo(newFile(dest));//dest新文件夹路径,通过renameto修改
System.out.println("renameToNewFileisOK?:"+isOk);
returnisOk;
}
❹ 哪位大神可以给我一个android开发 复选框的代码 新手求例子
xml文件中写控件 ,想要几个选项就写几个
<CheckBox
android:id="@+id/checkBox1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="方便面" />
<CheckBox
android:id="@+id/checkBox2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/checkBox1"
android:layout_below="@+id/checkBox1"
android:text="沐浴乳" />
<CheckBox
android:id="@+id/checkBox3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/checkBox2"
android:layout_below="@+id/checkBox2"
android:text="键盘" />
<CheckBox
android:id="@+id/checkBox4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/checkBox3"
android:layout_below="@+id/checkBox3"
android:text="鼠标" />
再在Activity中使用findviewbyid找到控件
ck_fbm = (CheckBox) findViewById(R.id.checkBox1);//ck_fbm是我定义的复选框的名
ck_myr = (CheckBox) findViewById(R.id.checkBox2);
ck_jp = (CheckBox) findViewById(R.id.checkBox3);
ck_sb = (CheckBox) findViewById(R.id.checkBox4);
再给每个控件添加监听事件就好了
CheckBox的监听OnCheckedChangeListener记得导android.widget.CompoundButton包下的,不要导错了RadioButton的包了
我使用Activity继承的接口
public class MainActivity extends Activity implements OnCheckedChangeListener
在MainActivity中实现接口的方法
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
// TODO Auto-generated method stub
switch (buttonView.getId()) {
case R.id.checkBox1:
if(isChecked){
Toast.makeText(getApplicationContext(), "方便面", 1).show();
}
break;
case R.id.checkBox2:
if(isChecked){
Toast.makeText(getApplicationContext(), "沐浴乳", 1).show();
}
break;
case R.id.checkBox3:
if(isChecked){
Toast.makeText(getApplicationContext(), "键盘", 1).show();
}
break;
case R.id.checkBox4:
if(isChecked){
Toast.makeText(getApplicationContext(), "鼠标", 1).show();
}
break;
default:
break;
}
}
方法的CompoundButton属性即被选中的CheckBox
再根据id判断选中了哪一个CheckBox
之后判断isChecked
再吐司了一下
最后给每个CheckBox都设置监听
ck_fbm.setOnCheckedChangeListener(this);
ck_myr.setOnCheckedChangeListener(this);
ck_jp.setOnCheckedChangeListener(this);
ck_sb.setOnCheckedChangeListener(this);
因为是用Activity继承的所以里面之间填this就好了
我也是看到题目之后去网络了下用法,有什么错的地方请指正,另外题主可以多去网络下
❺ android 代码布局简单的例子
(引用楼上的例子)
//初始化线性布局
LinearLayout linearLayout = new LinearLayout(context);
//设定线性布局的方向为竖直方向
linearLayout.setOrientation(LinearLayout.VERTICAL);
//设定线性布局的填充方式为自适应
linearLayout.setLayoutParams(new LayoutParams(
LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
//设定线性布局内的对齐方式为控件水平居中
linearLayout.setGravity(Gravity.CENTER_HORIZONTAL);
//初始化图片按钮
ImageButton news = new ImageButton(context);
//设定图片按钮的id
news.setId(85);
//为图片按钮设定监听器
news.setOnClickListener(this);
//为图片按钮设定图片
news.setBackgroundResource(R.drawable.news);
//设定图片按钮的属性
news.setLayoutParams(new LayoutParams(33, 33));
//将图片按钮加入线性布局
linearLayout.addView(news);
简单的小例子就像上面这样了,其实很简单,就像 你要盖一间房子,里面有桌子板凳什么的,你就要设定桌子板凳的各种属性,长宽高颜色,样式什么的,然后 设定 桌子板凳放到 什么位置,最后 把桌子板凳按照你的想法 放在那个位置上就好了。
❻ Google Android SDK开发范例大全的内容简介
本书在上一版的基础上,以Android手机应用程序开发(采用Android SDK 2.1)为主题,通过160多个范例全面且深度地整合了手机、网络及服务等多个开发领域,为读者提高程序设计功力提供了很大的帮助。
全书共分10章,主要以范例集的方式来讲述Android的知识点,详细介绍了开发Android的人机交互界面、Android常用的开发控件、使用Android手机收发短信等通信服务、开发Android手机的自动服务功能和娱乐多媒体功能以及整合Android与Google强大的网络服务等内容。随书光盘中包括了所有范例的程序代码。
本书讲述由浅入深,由Android的基础知识到实际开发应用,结构清晰、语言简洁,非常适合Android的初学者和Android的进阶程序开发者阅读参考。
❼ 安卓开发怎么在APP内部调用手机系统浏览器打开指定html并获取HTML的数据
Android开发_如何调用 浏览器访问网页和Html文件
一、启动android默认浏览器
Intent intent= new Intent();
intent.setAction('android.intent.action.VIEW');
Uri content_url = Uri.parse('http://www.cnblogs.com');
intent.setData(content_url);
startActivity(intent);
这样子,android就可以调用起手机默认的浏览器访问。
二、指定相应的浏览器访问
1、指定android自带的浏览器访问
( “com.android.browser”:packagename ;“com.android.browser.BrowserActivity”:启动主activity)
Intent intent= new Intent();
intent.setAction('android.intent.action.VIEW');
Uri content_url = Uri.parse('http://www.cnblogs.com');
intent.setData(content_url);
intent.setClassName('com.android.browser','com.android.browser.BrowserActivity');
startActivity(intent);
2、启动其他浏览器(当然该浏览器必须安装在机器上)
只要修改以下相应的packagename 和 主启动activity即可调用其他浏览器
intent.setClassName('com.android.browser','com.android.browser.BrowserActivity');
uc浏览器':'com.uc.browser', 'com.uc.browser.ActivityUpdate“
opera :'com.opera.mini.android', 'com.opera.mini.android.Browser'
qq浏览器:'com.tencent.mtt', 'com.tencent.mtt.MainActivity'
三、打开本地html文件
打开本地的html文件的时候,一定要指定某个浏览器,而不能采用方式一来浏览,具体示例代码如下
Intent intent= new Intent();
intent.setAction('android.intent.action.VIEW');
Uri content_url = Uri.parse('content://com.android.htmlfileprovider/sdcard/help.html');
intent.setData(content_url);
intent.setClassName('com.android.browser','com.android.browser.BrowserActivity');
startActivity(intent);
关键点是调用了”content“这个filter。
以前有在win32编程的朋友,可能会觉得用这种形式”file://sccard/help.html“是否可以,可以很肯定的跟你说,默认的浏览器设置是没有对”file“这个进行解析的,如果要让你的默认android浏览器有这个功能需要自己到android源码修改manifest.xml文件,然后自己编译浏览器代码生成相应的apk包来重新在机器上安装。
大体的步骤如下:
1、打开 packages/apps/Browser/AndroidManifest.xml文件把加到相应的后面就可以了
2、重新编译打包,安装,这样子,新的浏览器就支持”file“这个形式了
有兴趣的可以去试试。
❽ 《Android开发范例代码大全》源码
这个怎么可能有 除非买书附送的
❾ android开发,解析xml,listview,textview使用
设定ListView的item点击监听事件即可
示例代码如下
假设xml文件如下,简单的一个xml数据(出于限制所以改成url1)
<?xmlversion="1.0"encoding="UTF-8"?>
<data>
<url1>xxx</url1>
<url1>xxx</url1>
<url1>xxx</url1>
<url1>xxx</url1>
</data>
读取到xml文件后存入实体类里
publicclassData{
privateStringurl;
publicStringgetUrl(){
returnurl;
}
publicvoidsetUrl(Stringurl){
this.url=url;
}
}
设定listview的监听,大体代码如下
{
privateList<Data>datas;
privateListViewlistView;
privateTextViewtextView;
@Override
protectedvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_two);
。。。。。。。
。。。。。。省略view初始化等代码
listView.setOnItemClickListener(newOnItemClickListener(){
@Override
publicvoidonItemClick(AdapterView<?>parent,Viewview,
intposition,longid){
Stringurl=datas.get(position);
Stringhtml="<html></html>";//....网络请求获取html数据
//设定textview文字
textView.setText(html);
}
});
}
}