下面粘贴的代码取自HttpURLConnection上的java文档.
我收到以下错误:
readStream(in)
Run Code Online (Sandbox Code Playgroud)
因为没有这样的方法.
我在URLConnection的类概述中看到了同样的事情
URLConnection.getInputStream()
在哪里readStream?代码段如下:
URL url = new URL("http://www.android.com/");
HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
try
{
InputStream in = new BufferedInputStream(urlConnection.getInputStream());
readStream(in); <-----NO SUCH METHOD
}
finally
{
urlConnection.disconnect();
}
Run Code Online (Sandbox Code Playgroud) 阅读关于proguard的文档... android文档
我应该有一个ProGuard.cfg,因为它说......"当你创建一个Android项目时,会在项目的根目录中自动生成一个proguard.cfg文件."
如果我谷歌问题,那里到处都有答案,他们大多数人都说要修改一个以不要修改文件的警告开头的文件.
文档是否过时了?如何为发布版本启用此功能?谢谢,加里
我的应用程序的主界面是一个viewpager,用户只需水平滑动页面即可访问各个页面.其中一个页面有一个谷歌mapview(粘贴在下面).我的问题是,如果用户在地图页面上并使用水平滑动手势,页面将滑动到下一页而不是侧向移动的地图.就好像viewpager在地图之前获取手势一样.
如果用户很聪明并开始沿对角线或垂直方向滑动地图,则地图开始移动,然后手势可以水平继续.但我更喜欢在简单的水平滑动手势上移动地图而不是页面.可以使用textview始终滑动页面.
有什么办法可以让这件事发生吗?
谢谢,加里
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/ContentPanel"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/tvMAP"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Map"
style="@style/bigtype" />
<com.google.android.maps.MapView
android:id="@+id/mapview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:apiKey="mykeygoeshere"
android:clickable="true" />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud) 我的应用程序,使用谷歌mapview,已准备好发布.我的测试是使用我在启动项目时获得的谷歌地图密钥完成的.我被告知这个密钥对我的发布版本不起作用,我需要另一个密钥用于我的发布版本.
这个论坛中的所有帖子以及我能找到的其他所有地方都会讨论获得版本1密钥.例如,有关于如何获得版本1密钥的MD5指纹(无论是什么)的文档.
如何获得第2版所需的密钥?
编辑:为了使这个问题更清楚一点,我已经拥有64位应用程序密钥,密钥库文件,alais和密码.看起来我需要一个SHA-1指纹,可以通过keytool程序以某种方式获得.当我使用Eclipse Export Wizard时,我不需要keytool程序来获取我拥有的东西.谢谢,加里
谷歌搜索,我已经看过很多次这个问题,过去几年这个论坛上的一些帖子.我从未见过有人得到直接答案.
我有一个前台服务,试图通过执行this.StopSelf()运行2小时后停止自己.我已经尝试过了,当它被束缚时,它还没有被束缚.在AVD和设备上.
它根本不起作用.这是Android中的错误吗?(运行2.3.3).
服务怎么能阻止自己?
我有两个Intentservice的例子.一个是commonsware书中的下载示例.另一个是http://www.vogella.com/articles/AndroidServices/article.html#servicecommunication_handler.这两个示例都显示了服务执行有限任务,并且它们显然通过运行到onHandleIntent事件范围的末尾来销毁自己.
我写的服务必须有事件和听取事情.一个是LocationListener,用于监听GPS移动.另一个使Posts到REST服务并监听回复.我想让它运行直到一段时间过去,或者直到它被启动它的活动告诉它退出.
我如何让它继续运行?例如,我在哪里放置LocationListener的实现?谢谢,加里
下面的代码滚动4页就好了.我的问题是onPageScrolled滚动页面时不会触发事件.无论我是否使用该myPager.SetOffsccreenPageLimit(4)命令,都会发生这种情况.阅读文档之后,我的理解是,当我implements ViewPager.OnPageChangeListener在MyPagerAdapter课程中包含事件应该被触发时.我究竟做错了什么?
谢谢,加里布莱克利
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
MyPagerAdapter adapter = new MyPagerAdapter();
ViewPager myPager = (ViewPager) findViewById(R.id.mysevenpanelpager);
myPager.setAdapter(adapter);
myPager.setCurrentItem(0);
myPager.setOffscreenPageLimit(4);
}
private class MyPagerAdapter extends PagerAdapter
implements ViewPager.OnPageChangeListener {
public int getCount() {
return 4;
}
public Object instantiateItem(View collection, int position) {
LayoutInflater inflater = (LayoutInflater) collection.getContext()
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
int resId = 0;
switch (position) {
case 0:
resId = R.layout.left;
break;
case 1:
resId = R.layout.gps;
break;
case …Run Code Online (Sandbox Code Playgroud) 我有一项服务,我想做一个Foreground服务.我的服务无需与用户通信.我在这个论坛上看到的最简单的例子是将这些代码放入服务中......
Notification notification = new Notification();
startForeground(5481, notification);
Run Code Online (Sandbox Code Playgroud)
我在Commonsware的第606页中看到了一个使用Notification Builder(NotificationCompat.Builder)的更复杂的例子.此示例和其他示例需要提供复杂的通知.我没有这个需要.
我理解,为了使我的软件可以接受,我必须至少显示一个图标,让用户知道我的服务正在运行,并为用户提供取消它的方法.此外,如果我的服务决定自行停止,图标应该消失.但就是这样.这就是我需要做的.
为了实现这一点,我还需要添加到上面的内容中?谢谢,加里
我正在尝试发出消息已到达的通知.我添加了一个动作,期望在通知上显示一个图标(smallredball).我希望如果用户点击smallredball,主要活动将启动,并且检查附加组件的活动将看到订单执行与正常启动时不同的操作.
通知显示在目标手机(运行KitKat)和文本上,但小球图标从不显示.当用户触摸通知时,活动无需额外执行.编辑:活动现在正在获得额外的捆绑.
这是发送通知的代码:
private void raiseNotification( String username, String mesText)
{
DebugLog.debugLog("GCMIntentService: Attempting to Raise Notification ", false);
NotificationCompat.Builder b = new NotificationCompat.Builder(this);
Intent intent = new Intent(this, MainActivity.class);
intent.putExtra("whattodo", "showmessage");
intent.setAction(Long.toString(System.currentTimeMillis())); //just to make it unique from the next one
PendingIntent pIntent = PendingIntent.getActivity(this, 0, intent, PendingIntent.FLAG_CANCEL_CURRENT);
b.setContentTitle("New SafeTalk Message")
.setSmallIcon(R.drawable.note24x24)
.setContentText("From " + username + " " + mesText)
.setTicker("New SafeTalk Message")
.setContentIntent(pIntent)
.setSound(RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION))
.setAutoCancel(true)
.addAction(R.drawable.smallredball, "Read Now", pIntent);
NotificationManager mgr = (NotificationManager)getSystemService(NOTIFICATION_SERVICE);
mgr.notify(0, b.build());
}
Run Code Online (Sandbox Code Playgroud)
这是活动的代码段:
Bundle …Run Code Online (Sandbox Code Playgroud) 我的应用程序始终使用DeviceId作为唯一标识符,这当然需要READ_PHONE_STATE作为权限。过去还可以,但是现在我已迁移到Marshmellow 23,在这里请求此权限会在运行时显示一个非常可怕的对话框,说...
“允许{我的应用}拨打和管理电话吗?”
对于只想获取deviceId的应用程序来说,这是一条非常可怕的消息。
我正在考虑切换到Android ID,因为它不需要任何许可。
String androidId = Settings.Secure.getString(getContentResolver(), Settings.Secure.ANDROID_ID);
Run Code Online (Sandbox Code Playgroud)
谷歌搜索,我发现使用android ID时遇到了一些问题,但这都是陈旧的东西。在Froyo时代,有一家电话供应商为其所有电话生成相同的ID,但这就是我所看到的全部。
有人知道使用Android ID有任何问题吗?谢谢院长