当前位置: 编程技术>移动开发
本页文章导读:
▪聊天。 聊天。。。。。
是得分手段
......
▪ 豆瓣同城的客户端-豆邻1.0 豆瓣同城的客户端---豆邻1.0
豆邻是豆瓣同城的android客户端。具有豆瓣同城的功能,同时可查询周边兴趣点、豆瓣的同城好友、发布我说,绑定sina微博并把我说同步到sina微博。 .........
▪ Service范例-播放mp3音乐 Service实例-播放mp3音乐
1.在main.xml中加入如下四个按钮<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello"
/>
<Button android:layout_width="fil.........
[1]聊天。
来源: 互联网 发布时间: 2014-02-18
聊天。。。。。
是得分手段
[2] 豆瓣同城的客户端-豆邻1.0
来源: 互联网 发布时间: 2014-02-18
豆瓣同城的客户端---豆邻1.0
豆邻是豆瓣同城的android客户端。具有豆瓣同城的功能,同时可查询周边兴趣点、豆瓣的同城好友、发布我说,绑定sina微博并把我说同步到sina微博。
访问豆瓣和sina微博的认证方式都采用Oauth认证。
目前作为1.0版本功能上还有非常多的不足,特别是界面上。程序是本人业余时间完成的,难免会有bug,虽然我做了详细的测试。非常欢迎反馈给我。
以下是应用的截图,但不限于这些功能。
主界面:
可查询附近的兴趣点:
同城活动:
显示具体的某一个活动: 可将活动地址标识在地图上 也可计算出活动地址与您当前位置的距离
可搜索同城的活动:
可创建同城活动:
可显示我的活动:
同城好友:
我说:
应用下载,如果使用过程有任何问题 或者 bug请告诉我 谢谢:)
访问豆瓣活动的api中有地理坐标的数据,当然有些活动会没有,如果没有的话,通过活动地址进行geocoder同样可以得到地理坐标
这还只是个半成品 还有很多需要完善的 呵呵
豆邻是豆瓣同城的android客户端。具有豆瓣同城的功能,同时可查询周边兴趣点、豆瓣的同城好友、发布我说,绑定sina微博并把我说同步到sina微博。
访问豆瓣和sina微博的认证方式都采用Oauth认证。
目前作为1.0版本功能上还有非常多的不足,特别是界面上。程序是本人业余时间完成的,难免会有bug,虽然我做了详细的测试。非常欢迎反馈给我。
以下是应用的截图,但不限于这些功能。
主界面:
可查询附近的兴趣点:
同城活动:
显示具体的某一个活动: 可将活动地址标识在地图上 也可计算出活动地址与您当前位置的距离
可搜索同城的活动:
可创建同城活动:
可显示我的活动:
同城好友:
我说:
应用下载,如果使用过程有任何问题 或者 bug请告诉我 谢谢:)
1 楼
fengzl
2011-04-02
麻烦问一下你地理坐标数据从那里拿到的
2 楼
fengzhizi715
2011-04-02
fengzl 写道
麻烦问一下你地理坐标数据从那里拿到的
访问豆瓣活动的api中有地理坐标的数据,当然有些活动会没有,如果没有的话,通过活动地址进行geocoder同样可以得到地理坐标
3 楼
flycomos.lee
2011-04-02
求源码楼主
4 楼
fengzhizi715
2011-04-02
flycomos.lee 写道
求源码楼主
这还只是个半成品 还有很多需要完善的 呵呵
5 楼
fengzhizi715
2011-04-02
改了2个bug,附件是最新的app
6 楼
gamelation
2011-04-02
求源码,楼主
7 楼
turionboy
2011-04-02
楼主应该放源码
8 楼
zhangcs053
2011-04-03
谢谢分享!
9 楼
brook19
2011-04-07
楼主源码啊
10 楼
fulianwu
2011-05-21
鼓励楼主放源码
11 楼
niweiwei
2011-06-19
楼主,期待你的源码
[3] Service范例-播放mp3音乐
来源: 互联网 发布时间: 2014-02-18
Service实例-播放mp3音乐
1.在main.xml中加入如下四个按钮
2.在res目录下新建raw目录,并拷入mp3文件,我的是www.mp3
创建如下Service
3.在AndroidManifest.xml文件中注册Service
4.Activity中的代码
5.从这个例子中我们可以体会到Context.startService()方法和Context.bindService()方法的区别
在模拟器中点击开启音乐播放服务后,播放音乐,此时点击右侧的回退按钮,音乐仍然播放。但是通过绑定音乐播放服务启动的音乐,在点击回退按钮后,音乐也停止了播放,说明通过这种方式启动的服务是与Context绑定的。
1.在main.xml中加入如下四个按钮
<TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/hello" /> <Button android:layout_width="fill_parent" android:layout_height="wrap_content" android:id="@+id/button1" android:text="开启音乐播放服务"/> <Button android:layout_width="fill_parent" android:layout_height="wrap_content" android:id="@+id/button2" android:text="停止音乐播放服务"/> <Button android:layout_width="fill_parent" android:layout_height="wrap_content" android:id="@+id/button3" android:text="绑定音乐播放服务"/> <Button android:layout_width="fill_parent" android:layout_height="wrap_content" android:id="@+id/button4" android:text="解绑定音乐播放服务"/>
2.在res目录下新建raw目录,并拷入mp3文件,我的是www.mp3
创建如下Service
public class HelloService extends Service { MediaPlayer mp;//定义音乐播放器变量 private final static String TAG = "HelloService"; @Override //绑定服务 通过 bindService 方法启动服务时调用 public IBinder onBind(Intent intent) { Toast.makeText(this, "onBind(Intent intent)",Toast.LENGTH_SHORT).show(); mp.start(); return null; } @Override //解绑定服务 通过 unbindService 方法解绑定服务时调用 public boolean onUnbind(Intent intent) { Toast.makeText(this, "onUnbind(Intent intent)",Toast.LENGTH_SHORT).show(); mp.stop(); return false; } @Override //创建服务 该服务不存在需要被创建时被调用,不管startService()还是bindService()都会在启动时调用该方法 public void onCreate() { Toast.makeText(this, "onCreate()",Toast.LENGTH_SHORT).show(); //创建一个音乐播放器对象 mp = MediaPlayer.create(this.getApplicationContext(), R.raw.www); //设置可以重复播放 mp.setLooping(true); } @Override //停止服务服务 通过 onDestroy 方法停止服务时调用 public void onDestroy() { Toast.makeText(this, "onDestroy()",Toast.LENGTH_SHORT).show(); mp.stop(); } @Override //开始服务 通过 onStart 方法开始服务时调用 public void onStart(Intent intent, int startId) { Toast.makeText(this, "onStart",Toast.LENGTH_SHORT); mp.start(); } }
3.在AndroidManifest.xml文件中注册Service
<application android:icon="@drawable/icon" android:label="@string/app_name"> <activity android:name=".MainActivity" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <!-- 注册Service --> <service android:name=".service.HelloService"></service> </application>
4.Activity中的代码
public class MainActivity extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); // 获取页面组件 Button button1 = (Button) this.findViewById(R.id.button1); Button button2 = (Button) this.findViewById(R.id.button2); Button button3 = (Button) this.findViewById(R.id.button3); Button button4 = (Button) this.findViewById(R.id.button4); // 定义服务链接对象 -要启动哪个服务 final ServiceConnection sc = new ServiceConnection() { @Override public void onServiceDisconnected(ComponentName name) { Toast.makeText(MainActivity.this, "ServiceConnection onServiceDisconnected", Toast.LENGTH_SHORT).show(); } @Override public void onServiceConnected(ComponentName name, IBinder service) { Toast.makeText(MainActivity.this, "ServiceConnection onServiceConnected", Toast.LENGTH_SHORT).show(); } }; // 定义监听事件 OnClickListener ocl = new OnClickListener() { //在意图中指定服务 Intent intent = new Intent(MainActivity.this, HelloService.class); @Override public void onClick(View v) { switch (v.getId()) { case R.id.button1: startService(intent); break; case R.id.button2: stopService(intent); break; case R.id.button3: // 绑定启动要指定服务链接对象,绑定的操作选项 bindService(intent, sc, Context.BIND_AUTO_CREATE); break; case R.id.button4: unbindService(sc); break; } } }; //为按钮加点击事件 button1.setOnClickListener(ocl); button2.setOnClickListener(ocl); button3.setOnClickListener(ocl); button4.setOnClickListener(ocl); } }
5.从这个例子中我们可以体会到Context.startService()方法和Context.bindService()方法的区别
在模拟器中点击开启音乐播放服务后,播放音乐,此时点击右侧的回退按钮,音乐仍然播放。但是通过绑定音乐播放服务启动的音乐,在点击回退按钮后,音乐也停止了播放,说明通过这种方式启动的服务是与Context绑定的。
最新技术文章: